These methods are not efficient for lists. Using a deque with the methods
popleft and extendleft is more efficient.
--
Ticket URL: <https://code.djangoproject.com/ticket/23837>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* owner: => Zweedeend
* needs_better_patch: => 0
* status: new => assigned
* needs_tests: => 0
* needs_docs: => 0
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:1>
* cc: Zweedeend (added)
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:2>
* has_patch: 0 => 1
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:3>
Comment (by Zweedeend):
Patch at https://github.com/Zweedeend/django/tree/ticket_23837
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:4>
Comment (by aaugustin):
Zweedeend, can you turn this into a proper pull request so the CI runs it?
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:5>
* status: assigned => closed
* resolution: => fixed
Comment:
In [changeset:"fefb77934e6b8f91ce44be7e1438146cb99baa19"]:
{{{
#!CommitTicketReference repository=""
revision="fefb77934e6b8f91ce44be7e1438146cb99baa19"
Fixes #23837: Replace list.pop(0) by deque.popleft() in dfs function in
migrations
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:6>
Comment (by Carl Meyer <carl@…>):
In [changeset:"1ed9b9e2e2b62f6ef89558f98d786e9fcd649152"]:
{{{
#!CommitTicketReference repository=""
revision="1ed9b9e2e2b62f6ef89558f98d786e9fcd649152"
Merge pull request #3536 from Zweedeend/ticket_23837
Fixes #23837: Replace list with deque in migration-planner for improved
performance.
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/23837#comment:7>