The programs detail page now always makes a call to the Credentials API to check for program credentials, regardless of whether the user has earned a course certificate. The course certificate constraint adds an additional burden to testing in exchange for slightly decreased load on the API. The cost outweighs the benefit given the limited traffic to this page.
LEARNER-1103
get_many sometimes fails to bring back details cached on one or more Memcached nodes. It doesn't look like these keys are being evicted. 99% of the time all keys come back, but 1% of the time all the keys stored on one or more nodes are missing from the result of the get_many. One get_many may fail to bring these keys back, but a get_many occurring immediately afterwards will succeed in bringing back all the keys. This behavior can be mitigated by trying again for the missing keys, which is what we do here. Splitting the get_many into smaller chunks may also help.
LEARNER-382
The new design for the program detail page introduced a sidebar which includes a program-specific listing of credentials. This is an improvement over the old list of credentials found on the program list page and is meant to replace it. The new detail page is stable, so the credential listing on the program list page can be removed.
LEARNER-492
The course and program dashboards interpret an empty upgrade deadline to mean that a given seat is available. Previously, program dashboard pages interpreted empty upgrade deadlines to mean that a given seat was not available.
LEARNER-935
The read_cached_programs switch was used to control the release of changes for reading programs exclusively from the cache. With those changes stable, the switch is no longer necessary.
LEARNER-382
* Reorders form fields, and updates labels, placeholders, and tip text
* Increases clickable area for links and labels.
* Removes "*" markers from required fields, and instead adds
"(optional)" labels to visible optional fields.
* Updates font colors and sizes, and removes box shadows
* Adds custom drop-down styles
* Improves responsive design scaling for small screens
* Make Terms of Service and Honor Code open in new window to avoid losing form
field values.
When enabled, these changes prevent LMS application code from hitting the discovery service in-process to retrieve programs. Instead, program data is pulled from cache entries populated by a management command, cache_programs.
LEARNER-382
This prevents the LMS from requesting details for programs which the command hasn't been able to cache yet, which would throw off monitoring we'll be setting up to keep an eye on missing entries.
LEARNER-382