The following information reflects what is new in the edX Platform this week.
Note
EdX is not issuing a platform release this week. Instead, edX has completed an upgrade of Django, the web framework that edX uses to develop Studio, the LMS, and Insights. This upgrade does not result in any user-visible changes.
The edX engineering wiki Release Pages provide access to detailed information about every change made to the edx-platform GitHub repository. If you are interested in additional information about every change in a release, create a user account for the wiki and review the dated release pages.
EdX has just completed an upgrade from Django 1.4 to Django 1.8.
This upgrade includes the following changes as well as several additional changes. For more information, see the Django 1.8 Upgrade Release Notes page on the edX wiki or the Django 1.8 pull request in GitHub.
For Django 1.8, edX recommends that you use the transaction.atomic
decorator to start transactions for the code. For more information, see the
Database Transactions page on the Django website.
The commit_on_success
decorator is no longer available. You can use the
new outer_atomic
decorator instead.
To avoid exceptions when you create models, edX recommends that you use the following pattern.
if need_to_create_model: try: with transaction.atomic(): MyFancyModel.create(**kwargs) except IntegrityError: # Model has already been created. log.warning("Something...")
egg_name
value in each GitHub-based requirements.txt
line must
match the name
value in the setup.py
file of the repository.-e
) prefix only when necessary.app_label
attribute has been added to several different models. For
more information, see app_label on the Django website.To view the release notes for Django versions 1.5—1.8, see the following resources.