Chaim: For references to get up to speed on async concepts, there's not a
lot of great beginner-level stuff out there. I have a practical guide to
async functionality at
https://www.aeracode.org/2018/02/19/python-async-simplified/, but it's not
great at going into detail on Web stuff and why it has big advantages. I'd
love if other people could chime in with resources that helped them (rather
than me, who just started writing async code for fun 8 years ago and have
sort of kept up with things that way)

Tom F:

>  I’m just spitballing here but could we not conditionally return a
future/promise if some conditions are met, then implement some kind of
chaining based on the attribute accesses?

We could, but as you can see from the length of the paragraph you've
written this is incredibly _tricky_ to do correctly, and I'm not a fan of
lazy objects in the first place. Something we should investigate maybe, but
ultimately I'd prefer a simpler solution with less magic.

>  If we go with a `_async` suffix we could reduce a lot of boilerplate
with a bit of magic

Sure, though honestly I wouldn't say it needs magic, just:

    def function_async(self, foo):
       ...

    function = async_to_sync(function_async)

Tom C:

> Supporting an ASGI/asyncio request-response cycle in 2.2 might be a
perfectly achievable goal with or without funding. Users wouldn't be able
to  use the ORM, or much of the default middleware, but for some
gateway-type services I can still see it being useful.

Indeed. The time I personally spend each week on Channels (around 2 days
fulltime-equivalent) could easily be partially or wholly diverted into this
project, as Channels is pretty stable right now.

That said, my time for that project has been recompensed by the Mozilla OSS
grant they gave us a while back up until now - the funds for that are
finally drying out, and while I could do the work for free, I take a paycut
from my normal work to get the time that I use to work on Django, so
funding would be nice to have - and I don't expect anyone else to work for
free. I suspect the funding level needed would not be too great for the
initial work.

Given we have some MOSS funds left, I may use the last of those to start
getting an async pathway ready for 2.2 once this whole thing gets approved.
It's still within the scope of the original grant.

Jordan:

I'm not sure how we're going to develop this yet, but it'll likely be a
branch in the main Django repo once this proposal is approved (there's
still a little while before that happens - there needs to be consensus here
and/or a technical board vote).

Andrew


On Tue, Jun 5, 2018 at 2:21 PM C. Kirby <mist...@gmail.com> wrote:

> Andrew,
>
> I don't know enough about async web to comment directly on your proposal,
> but like most of your proposals it looks well thought out and
> comprehensive. Kudos to you.
>
> As you state, the scope of this project is one that can raise the profile
> of developers in the community - that appeals to me in ways that bug fixing
> has not, mostly because I have not encountered bugs in django.
>
> Towards that end, can you point to any of your preferred references to get
> up to speed on async concepts to help understand the scope and scale of
> this undertaking? Even if I don't work on the project I think intuitively
> that I could make good use of it.
>
> Thanks,
> Chaim
>
> --
> 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/7a958407-7dcf-4fd8-b09f-67e28346cb65%40googlegroups.com
> <https://groups.google.com/d/msgid/django-developers/7a958407-7dcf-4fd8-b09f-67e28346cb65%40googlegroups.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/CAFwN1upLVX6hsH_tgooRUgh9Mtvn%2Bqcn9_9_S1pKOAQ44S-PyQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to