Hi django people,
I do think future django version should be natively async and going to make one.
Most of the code from the django will be reused. It will be async-only. The method will mainly be adding async and await everywhere.
It will cut some of django functionality, for example the plan is:
- no model inheritance (only inheritance from abstract models allowed)
- no server cursors (chunked cursors)
- explicit create/update. You will still be able to use .save() It will make an insert if the object has no pk set, otherwise an insert. Want any other logic - use .insert() or .update() explicitly.
- no signals
obj.related_obj → should be prefetched, otherwise error
await obj.get(‘related_obj’) → makes query if needed
iteration of an unfetched queryset → error
Any more suggestions? What else can be removed?