Message 412537 - Python tracker

This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Content
Dumping my personal notes here as backup and in case anyone else wants to know how this is going.


1. `__package__`
    - [x]  Make sure all uses of the attribute fall back on `__spec__` (done way back when)
    - [x]  Add an `ImportWarning` when the attribute is used but it differs from `__spec__`  (3.6)
    - [x]  Update code to prefer the spec over the attribute, raising `ImportWarning` when having to fall back to the attribute (3.10)
    - [ ]  Change `ImportWarning` to `DeprecationWarning` when falling back to the attribute
    - [ ]  Remove code in `importlib` that used the old attribute
2. `__loader__`
    - [x]  Make sure all Python code uses of the attribute fall back on `__spec__` (3.10)
    - [ ]  Update C code to fall back to using `__spec__` ([issue](https://bugs.python.org/issue42132))
    - [ ]  Add an `ImportWarning` when the attribute is used but it differs from `__spec__`
    - [ ]  Update code to prefer the spec over the attribute, raising `ImportWarning` when having to fall back to the attribute
    - [ ]  Change `ImportWarning` to `DeprecationWarning` when falling back to the attribute
    - [ ]  Remove code in `importlib` that used the old attribute
3. `__cached__`
    - [ ]  Make sure all uses of the attribute fall back on `__spec__`
    - [ ]  Add an `ImportWarning` when the attribute is used but it differs from `__spec__`
    - [ ]  Update code to prefer the spec over the attribute, raising `ImportWarning` when having to fall back to the attribute
    - [ ]  Change `ImportWarning` to `DeprecationWarning` when falling back to the attribute
    - [ ]  Remove code in `importlib` that used the old attribute