Major features merged into Django have generally never been as "perfect" as the standards required for smaller patches. There's a recognisation of the need for ongoing work, probably over the course of multiple versions, in order to perfect any major new feature. The effort involved in getting a patch like this to the point it can be merged at all is very significant. Many major patches (composite fields, templates widgets...) have previous not landed, sometimes multiple times, because they are nowhere near the standard that this channels patch is.
My feeling is that the core team agree with Andrew that this is an important direction for Django, and 1.10 is the right release to include it in. Bug fixes, additional tests and so on can all be added between alpha and final as needed. The important thing is that we have broad agreement that the feature is good, the design is right, and an understanding that shortcomings will be worked on over the next year or two. Marc On 4 May 2016 8:36 p.m., "Andrew Godwin" <and...@aeracode.org> wrote: > > > On Wed, May 4, 2016 at 12:28 PM, Mark Lavin <markdla...@gmail.com> wrote: > >> I can (and do) appreciate the effort that's gone into this work while >> still feeling as though it isn't ready to be merged with Django. To be >> honest given that this PR contains almost no changes to Django itself and >> only adds new code, I don't understand why it can't live outside of Django >> while it continues to mature. >> >> > That's a perfectly valid question, and one I've debated a lot. It's mostly > because channels is meant to be a fundamental change to Django (inserting a > new layer below views and middleware), and having it as something > officially supported and maintained is far better than having a third-party > package everyone basically relies on but which doesn't benefit from the > support of a large team (having been there with South, I know I don't want > to go back). > > It's even more difficult to argue considering it does exist as a perfectly > functional third-party package for 1.8/1.9, but the goal with channels is, > for me, to move Django along in the world of web technology and make sure > it's positioned right for what the job of a webserver is becoming, which as > far as I am concerned inexorably involves websockets and other "async" > things, and I think having it in Django itself sends the right message. > > Most of the core team I have spoken to about this seem to agree with me, > which is why I'm pushing so hard. Obviously that trust and maintenance that > you get by being in core Django comes at a price, and the price is having > good code in the first place, but I believe that the code is very close to > being good enough considering we're labelling the whole feature as > "provisional" in 1.10 anyway (which is something Python recently started > doing for similar not-experimental but not-100%-final APIs) > > (Also, I would posit that the fact it barely changes anything in Django is > part of the good design, but I am biased there!) > > Andrew > > -- > You received this message because you are subscribed to the Google Groups > "Django developers (Contributions to Django itself)" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to django-developers+unsubscr...@googlegroups.com. > To post to this group, send email to django-developers@googlegroups.com. > Visit this group at https://groups.google.com/group/django-developers. > To view this discussion on the web visit > https://groups.google.com/d/msgid/django-developers/CAFwN1uqpLNTLDuZzNQzH_4k_ZYzHx0pbuXzeKo7u80MjVMr3HA%40mail.gmail.com > <https://groups.google.com/d/msgid/django-developers/CAFwN1uqpLNTLDuZzNQzH_4k_ZYzHx0pbuXzeKo7u80MjVMr3HA%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > For more options, visit https://groups.google.com/d/optout. > -- You received this message because you are subscribed to the Google Groups "Django developers (Contributions to Django itself)" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-developers+unsubscr...@googlegroups.com. To post to this group, send email to django-developers@googlegroups.com. Visit this group at https://groups.google.com/group/django-developers. To view this discussion on the web visit https://groups.google.com/d/msgid/django-developers/CAMwjO1Fx08P2LOPdgDQoav35Vb-gYXiMyrZXhXO3SvjqgzHPCQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.