
On Mon, Nov 1, 2021 at 11:26 AM Steven D'Aprano <steve@pearwood.info> wrote:
What sort of testing and maintenance perspective are you referring to? Testing and maintenance of the Python interpreter? Or your own code?
If it is your own code then this proposal will have no effect on your testing and maintenance. You already have tests, don't you? Then they will work the same way whether your functions use late-bound defaults or not. If you don't have tests, then the tests that you don't have will continue to not work the same as they currently don't work.
For the record: Out of 430 test files in the CPython test suite, only eight failed after I finished my first version of the implementation. That's a lot of tests that don't even care. (Some of those failures indicate actual problems that I needed to fix, or still need to. A couple are simple and very rigid tests that check things like the size of a function object. I don't think any of them indicate actual problems in any place other than the code I actually need to change - the parser, executor, and the inspect module.) Most code won't even be aware of this change. ChrisA