protocolbuffers.github.io icon indicating copy to clipboard operation
protocolbuffers.github.io copied to clipboard

Protocol Buffer Basics: Python refers to __metaclass__ but there is none of that in the code snippet

Open chwarr opened this issue 8 months ago • 1 comments

Looking at the rendered output of the Python Tutorial today, I see the following paragraph, which still references __metaclass__. I think some more cleanup in needed, but I'm not sure what...

The important line in each class is __metaclass__ = reflection.GeneratedProtocolMessageType. While the details of how Python metaclasses work is beyond the scope of this tutorial, you can think of them as like a template for creating classes. At load time, the GeneratedProtocolMessageType metaclass uses the specified descriptors to create all the Python methods you need to work with each message type and adds them to the relevant classes.

It looks like some cleanup was done in response to #124 in commit 654b896, but there are still some lingering references to __metaclass__ that makes the documentation confusing.

chwarr avatar May 24 '25 00:05 chwarr

Thanks for the heads up. I'll check with our main Python SWE and get the docs into a more consistent state.

Logofile avatar Jun 27 '25 20:06 Logofile