The course-discovery program editing interface uses django-autocomplete-light to render selected courses for a program. Now the latest course-discovery release relies on Django==1.11.x and django-auto-complete-light==3.1.8.
To prevserve ordering for selected courses, course-discovery monkey patch filter_choices_to_render (in course_discovery/apps/course_metadata/forms.py) which works for Django==1.8 and not work for Django==1.11.
To make course ordering work, django-autocomplete-light needs to be upgraded to 3.2.10.