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 eric.smith
Recipients alexdelorenzo, eric.smith, levkivskyi
Date 2018-08-09.02:54:30
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
Thanks for the pointer, Ivan.

I haven't really thought it through yet, but this fixes the problem at hand:

diff --git a/ b/
index ba34f6b..54916ee 100644
--- a/
+++ b/
@@ -1019,7 +1019,7 @@ def _asdict_inner(obj, dict_factory):
             result.append((, value))
         return dict_factory(result)
     elif isinstance(obj, (list, tuple)):
-        return type(obj)(_asdict_inner(v, dict_factory) for v in obj)
+        return type(obj)(*[_asdict_inner(v, dict_factory) for v in obj])
     elif isinstance(obj, dict):
         return type(obj)((_asdict_inner(k, dict_factory), _asdict_inner(v, dict_factory))
                           for k, v in obj.items())

There are plenty more tests needed for this, plus I need to think it through some more. astuple() has the same issue. I'll also have to think about the dict subclass case, too.
Date User Action Args
2018-08-09 02:54:31eric.smithsetrecipients: + eric.smith, levkivskyi, alexdelorenzo
2018-08-09 02:54:31eric.smithsetmessageid: <>
2018-08-09 02:54:31eric.smithlinkissue34363 messages
2018-08-09 02:54:30eric.smithcreate