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.