* Non-effectual code cleanup / refactor to remove some final pieces of duplication (canvas, blackboard).
3.17.5
--------
* Ensure enterprise course enrollments return valid course run statuses such that when a learner earns a passing certificate, the ``enterprise_course_enrollments`` API endpoint deems the course is complete even though the course itself may not have ended yet per the configured dates.
3.17.4
--------
* Add some info to the ``EnterpriseCourseEnrollment`` docstring, add ``is_active`` property to same.
3.17.3
--------
* Fixed unnecessary integrated channel signal transmission on course completion to inactive customers by adding guard condition.
3.17.2
--------
* Stop listening for ``student.CourseEnrollment`` unenrollment signal, as introduced in 3.17.0
3.17.1
--------
* Add management command to process expired subscriptions and field on subscriptions to persist that the subscription expiration has been processed