File: 2.0.0.rst

package info (click to toggle)
python-django-channels 3.0.3-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 896 kB
  • sloc: python: 3,123; makefile: 154; sh: 6
file content (34 lines) | stat: -rw-r--r-- 1,440 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
2.0.0 Release Notes
===================

Channels 2.0 is a major rewrite of Channels, introducing a large amount of
changes to the fundamental design and architecture of Channels. Notably:

* Data is no longer transported over a channel layer between protocol server
  and application; instead, applications run inside their protocol servers
  (like with WSGI).

* To achieve this, the entire core of channels is now built around Python's
  ``asyncio`` framework and runs async-native down until it hits either a
  Django view or a synchronous consumer.

* Python 2.7 and 3.4 are no longer supported.

More detailed information on the changes and tips on how to port your
applications can be found in our :doc:`/one-to-two` documentation.


Backwards Incompatible Changes
------------------------------

Channels 2 is regrettably not backwards-compatible at all with Channels 1
applications due to the large amount of re-architecting done to the code and
the switch from synchronous to asynchronous runtimes.

A :doc:`migration guide </one-to-two>` is available, and a lot of the basic
concepts are the same, but the basic class structure and imports have changed.

Our apologies for having to make a breaking change like this, but it was the
only way to fix some of the fundamental design issues in Channels 1. Channels 1
will continue to receive security and data-loss fixes for the foreseeable
future, but no new features will be added.