> Maybe I'm overlooking something, but why couldn't the runtime definition be as simple as this?

> 

> def dataclass_transform(**kwds):

>    def decorator(thing):

>         thing .__dataclass_transform__ = kwds

>        return  thing

>    return decorator

 

One advantage of explicitly listing the supported keyword args is that language servers can provide completion suggestions for them.

 

-Erik