Re: Withdrawing Channels from 1.10

2016-09-14 Thread Pietro Spagnulo
Just want to share my emotional support for your astonishing job. God bless 
you.

On Tuesday, May 10, 2016 at 6:40:01 PM UTC+2, Andrew Godwin wrote:
>
> Hi everyone,
>
> I'm going to withdraw the Channels patch for consideration for 1.10; 
> there's a lot more concern and uncertainty around it than I had 
> anticipated, given the reaction up until this point, and it's clear I have 
> some more work to do at convincing the community and proving the design.
>
> Instead, I will take the path-most-trodden for me and large Django 
> features, which is to run it as an external package, compatible with 1.8 
> through 1.10 (which the package already is), and let it mature and develop 
> outside of core, before coming round to look again at inclusion for 1.11 or 
> 2.0.
>
> My reasons are thus:
>
>  - Trying to push it into 1.10 is either going to delay the release or 
> result in a rush job. We have time-based releases for a reason, and 
> stopping "big-name features" from sinking a release is one of those reasons.
>
>  - There are numerous objections to the design, some well-founded. I'd 
> like to take time to prove out these decisions (or, indeed, refine them) 
> with channels in a more production situation and after a battery of load 
> testing and analysis.
>
>  - Being almost purely an addition to Django, even though it technically 
> inserts a new layer, makes it more well-suited to live externally than many 
> other features. While the external package will have to monkey-patch a few 
> things, it'll be relatively minor.
>
>  - The faster release cycle an external package can bring will almost 
> certainly be useful.
>
> However, the step I'd like to take instead is moving Channels and its 
> associated project repos (daphne, asgiref, asgi_redis, asgi_ipc) under the 
> Django organisation on GitHub and discussing them openly in Django blog 
> posts, documentation and other places as the Django project's official way 
> to get WebSockets working - after all, we are paying people to work on it, 
> and I still remain convinced we need a solution.
>
> I think this is a good mid-step, and given that you would have had to `pip 
> install` extra dependencies to get django.channels to run anyway, no more 
> complicated to use. I'd also propose that these external projects have 
> their own, shorter backwards-compatibility and security guarantees, 
> essentially running on a quicker, lighter version of the main release cycle.
>
> That discussion is upcoming, but I wanted to retract the patch now because 
> I don't want us to get to the 15th May and be unsure about what's going on, 
> and there's plenty of other work we need to do to prep for the alpha.
>
> Sorry about the drama I've stirred up these last few weeks; I had 
> misjudged the situation, and was more confident in the design and code than 
> I maybe should have been. A lot of the goals I want to achieve with 
> Channels can be done as an external package for now, and hopefully it will 
> prove the correct decision to take.
>
> 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/d5d81498-3ee7-4c00-af9f-75b9a5d16e92%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Withdrawing Channels from 1.10

2016-05-10 Thread Andrew Godwin
On Tue, May 10, 2016 at 10:25 AM, Carl Meyer  wrote:

> On 05/10/2016 10:39 AM, Andrew Godwin wrote:
> >  - Being almost purely an addition to Django, even though it technically
> > inserts a new layer, makes it more well-suited to live externally than
> > many other features. While the external package will have to
> > monkey-patch a few things, it'll be relatively minor.
>
> Are there small changes that could be made in Django 1.10 that would
> reduce the monkeypatching burden? In the channels repo it seems the only
> remaining monkeypatch in hacks.py is for staticfiles' runserver; are
> there other monkeypatches I'm missing?
>
> The staticfiles case is a known problem with management command
> overriding, and I don't have a good solution. I guess it's a choice
> between monkeypatching vs having to document a required ordering of
> staticfiles vs channels in INSTALLED_APPS.
>

Yes, that's the main one, and I'll probably leave that in place. There are
a couple of fixes I'd like to get in to the sessions objects so it's easier
to bring in predefined keys, and untangle BaseHandler a bit, but they're
not super important so I'll get them in before the beta if I can; if not,
the current approach works well enough.

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/CAFwN1uqc%3D6h2EHVwiEvr7NZn9NZRKGVx7Nyr_axLbteyQyW%2BCg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Re: Withdrawing Channels from 1.10

2016-05-10 Thread Tom Christie
Seems sensible. In particular having the documentation available as part of the 
regular Django docs would mean there's very little difference to the end user, 
but without us having to get everything merged into the core codebase. Is the 
docs element something we can reach a consensus on, or are there any objections 
to that approach?

-- 
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/babd844f-492a-4e72-8e56-fd1604b02d5c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Withdrawing Channels from 1.10

2016-05-10 Thread Carl Meyer
On 05/10/2016 10:39 AM, Andrew Godwin wrote:
>  - Being almost purely an addition to Django, even though it technically
> inserts a new layer, makes it more well-suited to live externally than
> many other features. While the external package will have to
> monkey-patch a few things, it'll be relatively minor.

Are there small changes that could be made in Django 1.10 that would
reduce the monkeypatching burden? In the channels repo it seems the only
remaining monkeypatch in hacks.py is for staticfiles' runserver; are
there other monkeypatches I'm missing?

The staticfiles case is a known problem with management command
overriding, and I don't have a good solution. I guess it's a choice
between monkeypatching vs having to document a required ordering of
staticfiles vs channels in INSTALLED_APPS.

Carl

-- 
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/57321974.7060207%40oddbird.net.
For more options, visit https://groups.google.com/d/optout.


signature.asc
Description: OpenPGP digital signature


Re: Withdrawing Channels from 1.10

2016-05-10 Thread Mark Lavin
Yes thank you Andrew for your continued work to move this conversation 
forward. I hope that Channels can continue to grow as an external package 
under the Django umbrella and bring on more contributors and improvements.

Best,

Mark

On Tuesday, May 10, 2016 at 12:44:21 PM UTC-4, Ryan Hiebert wrote:
>
> Thank you, Andrew, for your hard work. Channels is an exciting new 
> feature, and I'm glad that you're bringing it together. You're doing an 
> excellent job.

-- 
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/c4fb72c3-0c41-472b-bdd2-2d462333e046%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Withdrawing Channels from 1.10

2016-05-10 Thread Ryan Hiebert
Thank you, Andrew, for your hard work. Channels is an exciting new feature, and 
I'm glad that you're bringing it together. You're doing an excellent job.

-- 
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/368C3DE9-64F2-4C17-8E17-CF5EF5529664%40ryanhiebert.com.
For more options, visit https://groups.google.com/d/optout.


Withdrawing Channels from 1.10

2016-05-10 Thread Andrew Godwin
Hi everyone,

I'm going to withdraw the Channels patch for consideration for 1.10;
there's a lot more concern and uncertainty around it than I had
anticipated, given the reaction up until this point, and it's clear I have
some more work to do at convincing the community and proving the design.

Instead, I will take the path-most-trodden for me and large Django
features, which is to run it as an external package, compatible with 1.8
through 1.10 (which the package already is), and let it mature and develop
outside of core, before coming round to look again at inclusion for 1.11 or
2.0.

My reasons are thus:

 - Trying to push it into 1.10 is either going to delay the release or
result in a rush job. We have time-based releases for a reason, and
stopping "big-name features" from sinking a release is one of those reasons.

 - There are numerous objections to the design, some well-founded. I'd like
to take time to prove out these decisions (or, indeed, refine them) with
channels in a more production situation and after a battery of load testing
and analysis.

 - Being almost purely an addition to Django, even though it technically
inserts a new layer, makes it more well-suited to live externally than many
other features. While the external package will have to monkey-patch a few
things, it'll be relatively minor.

 - The faster release cycle an external package can bring will almost
certainly be useful.

However, the step I'd like to take instead is moving Channels and its
associated project repos (daphne, asgiref, asgi_redis, asgi_ipc) under the
Django organisation on GitHub and discussing them openly in Django blog
posts, documentation and other places as the Django project's official way
to get WebSockets working - after all, we are paying people to work on it,
and I still remain convinced we need a solution.

I think this is a good mid-step, and given that you would have had to `pip
install` extra dependencies to get django.channels to run anyway, no more
complicated to use. I'd also propose that these external projects have
their own, shorter backwards-compatibility and security guarantees,
essentially running on a quicker, lighter version of the main release cycle.

That discussion is upcoming, but I wanted to retract the patch now because
I don't want us to get to the 15th May and be unsure about what's going on,
and there's plenty of other work we need to do to prep for the alpha.

Sorry about the drama I've stirred up these last few weeks; I had misjudged
the situation, and was more confident in the design and code than I maybe
should have been. A lot of the goals I want to achieve with Channels can be
done as an external package for now, and hopefully it will prove the
correct decision to take.

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/CAFwN1uq7-E%2BLu5hCNQhoyO2W%3DvnPis7Q3sbqGo1xQ-%2BRmsFAgw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.