pylint icon indicating copy to clipboard operation
pylint copied to clipboard

pyreverse tracking and drawing class data member relations in addition to instance data members (maybe enable/disable option). fixes attrs.org

Open txemi opened this issue 1 year ago • 0 comments

Current problem

I would like to suggest pyreverse tracking class data members in adition to instance data members and draw them on graphs. It may be an option (enable/disable) for people not wanting this.

Example of use case: I am using pyreverse for drawing charts on python dependencies, unfortunately attrs.org class data members are not recognized by pyreverse as they are not declared as expected (instance data members are declared as class data members first on attrs.org) and real existing relations do not appear on graphs. It is a pity not enjoying pyreverse on attrs.org classes. Lot of people use this attrs.org, useful for clearness, compactness and convention.

It does not seem difficult to implement as the only difference is that declared attrs.org attributes are class members instead instance members, having annotated type declarations they would have similar parsing. It also seems to me that parsing and drawing class attribute or data member relations would be useful in pyreverse even not using attrs.org on more use cases.

Thanks,

Desired solution

Someone proposes a patch of find workaround.

Additional context

Link to same issue on attrs site: https://github.com/python-attrs/attrs/issues/1231

txemi avatar Feb 01 '24 10:02 txemi