The Django REST framework, a toolkit for building Web APIs to back-end services, is undergoing a series of upgrades covering under-the-hood capabilities as well as developer and user features.
Version 3.0, released Monday, fixes issues that were "a bit gnarly" and is a less user-facing release, Tom Christie, primary maintainer of Django REST, said. Release notes describe the upgrade as incremental: "There are some breaking API changes and upgrading will require you to read the release notes carefully, but the migration path should otherwise be relatively straightforward."
The upgrade is "about cleaning up how the serializers" -- which validate API input and can be displayed as regular HTML forms -- "work under the hood," said Christie. APIs can be accessible programmatically and made available as Web pages, and printable representations on serializers now allow for inspection of exactly what fields are present on an instance, release notes state. Simple model serializers are easier to understand and debug in the upgrade. Also, JSON output is more compact with Unicode style encoding turned on by default.
For the upcoming 3.1 release, developer-facing features will be emphasized, Christie said, whereas features in the subsequent 3.2 release will be geared toward users. For example, the 3.1 release will have improved pagination in the API, while the 3.2 version will have a management panel built directly into it, Christie said. This will enable engineers or users to inspect data they are working with and filter and search it.
Plans call for version 3.1 to be available in a couple months, and the 3.2 release is expected in early May. Developers using Django REST must be versed in Python, Christie said; with the framework, REST is leveraged to connect services. "It’s all about how do you build services that communicate with each other," said Christie, who works at the DabApps consulting firm in Brighton, United Kingdom.