◐ Shell
clean mode source ↗

Message 297807 - Python tracker

Comments on difficulties and questions.

D1. I will look at test changes where there is a PR to run.  I wrote what you changed, but might not have considered what you did.
D2. Moot for the moment.
D3. Ditto.
D4. If not needed, skip for now.
D5. I will be more comfortable changing and presumably improving working code when we have good tests.  GetDefaultItems (needs renaming) could save references to page and section dicts.

We are in a bit of a chicken and egg situation when we need better tests to improve code and better code to write better tests.  After steps 1 and 2, I want to work on tests.  Then we can work on more code changes.

Q1. dict.get is a way to avoid the existence check, and I am thinking of trying it out when tests are in place.  It may not have existed when this code was written.  I don't know what else DefaultDict adds.  
Q2. I was aware of the connection to tab pages, but it is not exact.  I decided on 'config_type' for the string argument and local name page for the corresponding dict.

Note: Yes, a bug.  I save usercfg so I could restore it.  The fix should be a PR for #30780.