Issue 32225: Implement PEP 562: module __getattr__ and __dir__ - 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.

classification
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: levkivskyi Nosy List: levkivskyi, methane, ncoghlan
Priority: normal Keywords: patch

Created on 2017-12-05 20:30 by levkivskyi, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 4731 merged levkivskyi, 2017-12-05 20:31
Messages (5)
msg307935 - (view) Author: Alyssa Coghlan (ncoghlan) * (Python committer) Date: 2017-12-10 00:39
For documentation of this feature, I'd suggest adding a new subsection after https://docs.python.org/3/reference/datamodel.html#customizing-attribute-access (but at the same level), called "Customizing module attribute access".

That can then cover defining __getattr__ and __dir__ as module level functions, and also mention setting __class__ (which would be enough to close issue 27505 as well).

The new section should explicitly mention that these only affect lookups and modifications made using the attribute access syntax - directly accessing the module globals (whether by code within the module, or via a reference to the module's globals dict) is unaffected.
msg308285 - (view) Author: Ivan Levkivskyi (levkivskyi) * (Python committer) Date: 2017-12-14 10:59
New changeset 5364b5cd7571f2dfa75acd37b388c14ac33fef73 by Ivan Levkivskyi in branch 'master':
bpo-32225: Implementation of PEP 562 (#4731)
https://github.com/python/cpython/commit/5364b5cd7571f2dfa75acd37b388c14ac33fef73
msg308290 - (view) Author: Ivan Levkivskyi (levkivskyi) * (Python committer) Date: 2017-12-14 11:19
Travis build on master successful, so I am closing this issue.
msg310271 - (view) Author: Inada Naoki (methane) * (Python committer) Date: 2018-01-19 10:29
I didn't notice this is implemented.
Congrats, Ivan!

BTW, would you update the PEP status to Final?
msg310313 - (view) Author: Ivan Levkivskyi (levkivskyi) * (Python committer) Date: 2018-01-20 01:07
> BTW, would you update the PEP status to Final?

Good point, here is the PR https://github.com/python/peps/pull/554