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.

Author captain-kark
Recipients brett.cannon, captain-kark, eric.smith, ethan.furman, rhettinger, serhiy.storchaka
Date 2019-07-19.20:25:37
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <CALDUVErQkRRPbru-rz9qjsvy2POdZ1oiTPc_B0mhJZnijFawBw@mail.gmail.com>
In-reply-to <1563563325.76.0.126138759632.issue37623@roundup.psfhosted.org>
Content
You're right, I was invoking the namedtuple on the same line that I was
defining it, freezing it in the process.

I split it to into two statements, and snuck the __spec__ attribute between
the definition and the instantiation.

I'll update the examples on my GitHub issue in the morning, and probably
close the issue out unless I find something else that is blocking me.

Thanks for the input 👍

On Fri, Jul 19, 2019, 22:08 Serhiy Storchaka <report@bugs.python.org> wrote:

>
> Serhiy Storchaka <storchaka+cpython@gmail.com> added the comment:
>
> It is not hard to set __spec__ (as well as any other attributes) after
> creating a namedtuple class.
>
> A = namedtuple(...)
> A.__spec__ = ...
>
> or
>
> class A(namedtuple(...)):
>     __spec__ = ...
>
> __spec__ do not have anything to namedtuple. It is not like __module__ or
> __doc__ setting which would benefit almost every public namedtuple class.
> It is not even special for types.
>
> ----------
> nosy: +serhiy.storchaka
>
> _______________________________________
> Python tracker <report@bugs.python.org>
> <https://bugs.python.org/issue37623>
> _______________________________________
>
History
Date User Action Args
2019-07-19 20:25:38captain-karksetrecipients: + captain-kark, brett.cannon, rhettinger, eric.smith, ethan.furman, serhiy.storchaka
2019-07-19 20:25:37captain-karklinkissue37623 messages
2019-07-19 20:25:37captain-karkcreate