• 
      

    Add pydocstyle tool to Review Bot

    Review Request #10197 — Created Oct. 4, 2018 and submitted

    Information

    ReviewBot
    master
    738b160...

    Reviewers

    Users can now configure Review Bot to run pydocstyle, a tool for checking
    compliance with Python docstring conventions.

    Pydocstyle is not added to the install requires list and users will
    need to manually install it to use it.

    Pydocstyle defaults to using the PEP 257 docstring convention but users
    can add a list of errors to ignore which will override the convention.

    Tested dependency check by running reviewbot worker command without
    pydocstyle installed

    Tested pydocstyle by adding new configuration to Review Bot integration
    and publishing a review. Also tested with errors added to ignore list.

    Description From Last Updated

    In your summary and description, "ReviewBot" -> "Review Bot"

    david david

    We also need to add documentation for the pydocstyle tool.

    david david

    E501 line too long (88 > 79 characters)

    reviewbot reviewbot

    E501 line too long (84 > 79 characters)

    reviewbot reviewbot

    E501 line too long (85 > 79 characters)

    reviewbot reviewbot

    E226 missing whitespace around arithmetic operator

    reviewbot reviewbot

    F401 'reviewbot.processing.review.File' imported but unused

    reviewbot reviewbot

    F401 'reviewbot.processing.review.Review' imported but unused

    reviewbot reviewbot

    F401 'rbtools.api.resource.Resource' imported but unused

    reviewbot reviewbot

    F401 'pydocstyle' imported but unused

    reviewbot reviewbot

    E302 expected 2 blank lines, found 1

    reviewbot reviewbot

    W391 blank line at end of file

    reviewbot reviewbot

    E302 expected 2 blank lines, found 1

    reviewbot reviewbot

    Can you add a module-level docstring describing what the file is/does?

    brennie brennie

    "PEP 257"

    brennie brennie

    This patch should build upon your previous patch and add pydocstyle to the all extra_requires section.

    brennie brennie

    Alphabetical order.

    brennie brennie

    Please use single quotes instead of double.

    david david

    Please use single quotes instead of double here.

    david david

    This is rst, which has a somewhat different markup for code formatting than markdown. This should probably be: :command:`pydocstyle` can …

    david david

    I don't believe these lines are needed here, only the (duplicated) docstring under your class PydocstyleTool on line 9.

    gojeffcho gojeffcho

    Should this be looking for something a little more specific than the broad Exception class?

    gojeffcho gojeffcho
    Checks run (1 failed, 1 succeeded)
    flake8 failed.
    JSHint passed.

    flake8

    ilaw
    brennie
    1. 
        
    2. bot/reviewbot/tools/pydocstyle.py (Diff revision 2)
       
       
      Show all issues

      Can you add a module-level docstring describing what the file is/does?

      1. Should I make it the same as the class-level docstring ("""Review Bot tool to run pydocstyle.""") which is what flake8.py does?

    3. bot/reviewbot/tools/pydocstyle.py (Diff revision 2)
       
       
      Show all issues

      "PEP 257"

    4. 
        
    brennie
    1. 
        
    2. bot/setup.py (Diff revision 2)
       
       
      Show all issues

      This patch should build upon your previous patch and add pydocstyle to the all extra_requires section.

    3. 
        
    ilaw
    brennie
    1. 
        
    2. bot/setup.py (Diff revision 3)
       
       
       
       
      Show all issues

      Alphabetical order.

    3. 
        
    ilaw
    david
    1. 
        
    2. bot/reviewbot/tools/pydocstyle.py (Diff revision 4)
       
       
      Show all issues

      Please use single quotes instead of double.

    3. bot/reviewbot/tools/pydocstyle.py (Diff revision 4)
       
       
      Show all issues

      Please use single quotes instead of double here.

    4. 
        
    ilaw
    david
    1. 
        
    2. Show all issues

      In your summary and description, "ReviewBot" -> "Review Bot"

    3. Show all issues

      We also need to add documentation for the pydocstyle tool.

    4. 
        
    ilaw
    david
    1. 
        
    2. docs/reviewbot/tools/pydocstyle.rst (Diff revision 6)
       
       
       
      Show all issues

      This is rst, which has a somewhat different markup for code formatting than markdown. This should probably be:

      :command:`pydocstyle` can be installed on most systems by running::
      
          $ pip install pydocstyle
      

      I notice now that the earlier changes made this same mistake, so I'll fix up the ones that are already in the tree.

      1. Here's the full text I'm using:

        :command:`pyflakes` can be installed on most systems by running::
        
            $ pip install pyflakes
        
        It may also be available in your system's package manager.
        
    3. 
        
    ilaw
    david
    1. Ship It!
    2. 
        
    gojeffcho
    1. 
        
    2. bot/reviewbot/tools/pydocstyle.py (Diff revision 7)
       
       
       
      Show all issues

      I don't believe these lines are needed here, only the (duplicated) docstring under your class PydocstyleTool on line 9.

      1. Barret said to add a module-level docstring in addition to the class-level docstring

    3. bot/reviewbot/tools/pydocstyle.py (Diff revision 7)
       
       
      Show all issues

      Should this be looking for something a little more specific than the broad Exception class?

      1. I think it's good to have it as a catch-all in case there were parsing issues and if some lines don't have the format we want

    4. 
        
    david
    1. Ship It!
    2. 
        
    ilaw
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to master (6773084)