There are a number of improvements, including how you define them and the things you can do with them. Some of these tie in with other language features, e.g typing.NamedTuple[1].
There is also PEP 487[2], which means you can do more without needing a metaclass.