Sometimes learners have certificates in old course runs which've been deleted. When this happens loading the learner's program progress can result in 500 errors. This corrects those by choosing to count any non-existent course the learner has certificates for as counting towards program completion, effectively assuming that availability dates have passed for all such courses. Also fixes an error with a condition related to how we determine whether an enrolled course is considered "in progress". The previous version of the code had a bug that would result in a lot more courses being marked "in progress" for the purpose of program completion than actually were. JIRA:EDUCATOR-5787
Open edX -------- This is the root package for Open edX. The intent is that all importable code from Open edX will eventually live here, including the code in the lms, cms, and common directories. If you're adding a new Django app, place it in core/djangoapps. If you're adding utilities that require Django, place them in core/djangolib. If you're adding code that defines no Django models or views of its own but is widely useful, put it in core/lib. Note: All new code should be created in this package, and the legacy code will be moved here gradually. For now the code is not structured like this, and hence legacy code will continue to live in a number of different packages.