1. Skip to navigation
  2. Skip to content

Django's Queryset-Refactor Merged!

Just as Malcolm Tredinnick stated on This Week in Django 19, the Queryset-Refactor branch has been merged into trunk. Changeset 7477 makes that happen.

I’m sure there will be plenty of future blog posts talking about some of enhancements / changes that were made, but some of the highlights:

  • Ordering has been made consistent with the double-underscore syntax in filtering.
  • New update method that can update multiple records database side.
  • Addition of reverse method.
  • New values_list method that returns a tuple of values. This is a really nice addition.

Plus, tons of bug fixes, lots of reorganization that makes future enhancements much simpler, and lots of other goodness. See the Queryset Refactor Branch page on the wiki for more information.

For a lot of open source projects this type of thing would not have a huge impact, since with most projects the developers are running their code off of released versions. With Django, most developers have been accustomed to running their code, (yes, even production code), off of the trunk. With two very large branches, NewForms-Admin and Queryset-Refactor, it was often a difficult situation in deciding which branch would be the primary code base. For most of my stuff, I benefited more from the changes in Queryset-Refactor, and so I often settled on using that as my “trunk”. With the merge of Queryset Refactor I can shift to using NewForms-Admin (as soon as it merges to trunk), and be able to continue to enjoy all of the good stuff in Queryset Refactor.

An incredible amount thanks goes to Malcolm Tredinnick for all his work on this branch. He has done a tremendous job with the refactoring and enhancing of Django’s querysets.


Discussion