The style guide prescribes the order of header file inclusions for the project and requires that we #include or make explicit forward declarations for any functions we use, however we were only enforcing this at review time manually and not commit time. I would like to turn on the checks at commit time, so I am in the process of raising changes against stout, libprocess and mesos to bring the code base into compliance. Once this is completed, I propose to update cpplint.py and mesos-style.py to enforce the style guide.
Anyone interested can comment on the following tickets: https://issues.apache.org/jira/browse/MESOS-2926 Extend mesos-style.py/cpplint.py to check #include files https://issues.apache.org/jira/browse/MESOS-2927 Update mesos #include headers https://issues.apache.org/jira/browse/MESOS-2928 Update stout #include headers https://issues.apache.org/jira/browse/MESOS-2929 Update libprocess #include headers -- Paul Brett