Re: [COMMITTERS] pgsql: Clean up the #include mess a little. - Mailing list pgsql-hackers

From Ants Aasma
Subject Re: [COMMITTERS] pgsql: Clean up the #include mess a little.
Date
Msg-id CA+CSw_swDoToduoEkt8GSi0dvMwDOYei--zATg_VrZedZpgZ1A@mail.gmail.com
Whole thread Raw
In response to Re: [COMMITTERS] pgsql: Clean up the #include mess a little.  (Greg Stark <stark@mit.edu>)
Responses Re: [COMMITTERS] pgsql: Clean up the #include mess a little.
List pgsql-hackers
On Mon, Sep 5, 2011 at 4:55 PM, Greg Stark <stark@mit.edu> wrote:
> What I wouldn't mind seeing is a graph of all includes and what they
> include. This might help figure out what layering violations there are
> like the one that caused this mess. I think I've seen tools to do this
> already somewhere.

I whipped together a quick Python script to do this. Attached is the
Python script (requires pydot) and the result of running it on includes/.
I didn't attach the png version of the output because it was 7MB.

If rendering all includes at once doesn't give a good overview it can
also select a subset through traversing dependencies. For example:
render_includes.py -i include/ \
  --select="storage/spin.h+*,access/xlog.h+*" output.png

This will render everything that directly or indirectly depends  on those
two headers. See --help for details.

--
Ants Aasma

Attachment

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Couple document fixes
Next
From: Tom Lane
Date:
Subject: Re: Redundant bitmap index scans on smallint column