<div dir="ltr"><div>It looks like code quality checking and GitHub integration in general<br></div><div>is getting better all the time! Tiago setup <a href="http://landscape.io">landscape.io</a> for us here:<br><br><a href="https://landscape.io/github/biopython/biopython">https://landscape.io/github/biopython/biopython</a><br></div><div><br></div>Peter<br><br><div><div><div class="gmail_quote">---------- Forwarded message ----------<br>From: <b class="gmail_sendername">Carl from Landscape.io</b> <span dir="ltr"><<a href="mailto:carl@landscape.io">carl@landscape.io</a>></span><br>Date: Fri, Dec 4, 2015 at 10:09 AM<br>Subject: Pull Request Status and Faster Checks<br>To: <a href="mailto:p.j.a.cock@googlemail.com">p.j.a.cock@googlemail.com</a><br><br><br><u></u>












<div bgcolor="#FFFFFF" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;min-height:100%;width:100%!important">


<table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%" bgcolor="#fff">
    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
        <td style="margin:0px auto!important;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;display:block!important;max-width:600px!important;clear:both!important">

            <div style="margin:0px auto;padding:15px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;max-width:600px;display:block">
                <table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%" bgcolor="#fff">
                    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
                        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
                            <img alt="Landscape" src="https://landscape-io.s3.amazonaws.com/img/landscape_logo.png" style="margin: 0px; padding: 0px; font-family: "Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif; max-width: 100%;">
                            <span style="margin:0px;padding:0px;font-family:"Open Sans",sans-serif;color:rgb(104,112,116);font-size:28px">Landscape</span>
                        </td>
                    </tr>
                </tbody></table>
            </div>

        </td>
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
    </tr>
</tbody></table>



<table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%">
    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
        <td style="margin:0px auto!important;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;display:block!important;max-width:600px!important;clear:both!important" bgcolor="#FFFFFF">

            <div style="margin:0px auto;padding:15px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;max-width:600px;display:block">
                <table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%">
                    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
                        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
                            <h3 style="margin:15px 0px;padding:0px;font-family:"HelveticaNeue-Light","Helvetica Neue Light","Helvetica Neue",Helvetica,Arial,"Lucida Grande",sans-serif;line-height:1.1;color:rgb(0,0,0);font-weight:500;font-size:27px">Pull Request Status and Faster Checks</h3>

                            
                            <p style="margin:0px 0px 15px;padding:15px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;font-weight:normal;font-size:14px;line-height:1.6;background-color:rgb(236,248,255)">
                                <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=911885d342&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203);font-weight:bold" target="_blank">Landscape.io</a> is a tool for checking your Python code and
                                pointing out errors, problems and stylistic issues. Think of it like an automatic
                                code review.
                                You are receiving this email because you signed up for updates about new features.
                                You can <a href="http://landscape.us4.list-manage1.com/unsubscribe?u=cb57338e2fd8f66c847376971&id=fb176c5620&e=efc72173f3&c=3f50edf87c" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203);font-weight:bold" target="_blank">unsubscribe</a> to stop
                                receiving these emails.

                                <span style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"></span>
                            </p>

                            <p style="margin:0px 0px 10px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;font-weight:normal;font-size:17px;line-height:1.6">Two updates for you this time: improvements to both pull request integration with GitHub, and checks are now up to five times quicker.</p>

                            <div style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">Previously, Landscape would <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=ea5f2ca3cf&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">create a comment on pull requests</a> showing the change in code quality introduced by the proposed code. This was often quite spammy, though, and therefore pull request status is now set using GitHub's status API.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
This means that, when you create a pull request, you will see something like this:<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<img src="https://gallery.mailchimp.com/cb57338e2fd8f66c847376971/images/534145e4-9eb4-4375-a628-7ea6e5a645e4.png" style="margin: 0px; padding: 0px; font-family: "Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif; max-width: 100%;" width="583" align="none" height="253"><br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
The default behaviour is simply to add information about the code check to the pull request. If you like, you can have Landscape mark the pull request as "failed" if code quality deteriorates - you can do this in your <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=f48d5709d4&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">preferences</a> either for entire<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
organisations or on a per-repository basis.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
Currently, failing can only be triggered by any decrease in score. If you would like to have different criteria - for example, fail due to new errors only but don't worry about smells - please <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=2c78db99ea&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">file an issue on the issue tracker</a> or<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<a href="mailto:carl@landscape.io?subject=Pull%20Request%20Status%20Criteria" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">drop me an email</a> so I can figure out what kind of behaviour is useful!<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
The old commenting system is still available but has been disabled by default in favour of the status updates. You can however enable it in your <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=7a731955b2&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">preferences</a>. It can still sometimes be useful if you tend to make pull requests then add more commits afterwards, as with the status-api, it only represents the most recent commit of the PR branch. The bot comments allow you to see how new commits compare to old commits, if that history is useful to you.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
This fixes issues <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=c7c0dde271&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">#108</a>,<a href="http://landscape.us4.list-manage2.com/track/click?u=cb57338e2fd8f66c847376971&id=74bf13626b&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank"> #158 </a>and <a href="http://landscape.us4.list-manage.com/track/click?u=cb57338e2fd8f66c847376971&id=5519a20a21&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">#160</a>.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<b style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><span style="font-size:18px;margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">Faster Checks</span></b><br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
The slowest part of the checks for some time has been setting up a virtual environment and installing the various requirements of projects. This is necessary to help with inferring types and APIs used by project code - without the complete requirements, there are often several incorrect or spurious warnings.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
These requirements are now cached between checks. The first check will still be slow as the environment is buit for the first time, but afterwards the requirements installation is a lot faster, and will only need to fetch and install libraries if the versions depended on have changed.<br style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
 </div>

                        </td>
                    </tr>
                </tbody></table>
            </div>

        </td>
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
    </tr>
</tbody></table>


<table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%;clear:both!important">
    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
        <td style="margin:0px auto!important;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;display:block!important;max-width:600px!important;clear:both!important">

            
            <div style="margin:0px auto;padding:15px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;max-width:600px;display:block">
                <table style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;width:100%">
                    <tbody><tr style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif">
                        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif" align="center">
                            <p style="margin:0px 0px 10px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;font-weight:normal;font-size:14px;line-height:1.6">
                                <a href="http://landscape.us4.list-manage1.com/track/click?u=cb57338e2fd8f66c847376971&id=be7595bcdb&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">Terms</a> |
                                <a href="http://landscape.us4.list-manage1.com/track/click?u=cb57338e2fd8f66c847376971&id=e0a14c659a&e=efc72173f3" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">Privacy</a> |
                                <a href="http://landscape.us4.list-manage1.com/unsubscribe?u=cb57338e2fd8f66c847376971&id=fb176c5620&e=efc72173f3&c=3f50edf87c" style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif;color:rgb(43,166,203)" target="_blank">Unsubscribe</a>
                            </p>
                        </td>
                    </tr>
                </tbody></table>
            </div>

        </td>
        <td style="margin:0px;padding:0px;font-family:"Helvetica Neue","Helvetica",Helvetica,Arial,sans-serif"><br></td>
    </tr>
</tbody></table>

<img src="http://landscape.us4.list-manage.com/track/open.php?u=cb57338e2fd8f66c847376971&id=3f50edf87c&e=efc72173f3" width="1" height="1"></div>
</div><br></div></div></div>