fix: enhance missing methods to handle missing keys more explicitly i… by t4m4k0ty4 · Pull Request #59 · fluentpython/example-code-2e
Description
This PR improves the implementation of missing methods across several mapping subclasses to ensure safer and more predictable behavior when attempting to access keys in a case-insensitive manner.
Problem
In the original version, calls to self[_upper(key)] were made without checking if the transformed key actually exists. This could result in unhandled KeyErrors or unintended recursion, especially in dictionary-like structures where missing is automatically called upon a missing key.
Impact of my solution
This change enhances code clarity and error safety, making the behavior of custom mappings more robust and closer to Python’s expectations for missing.