Update pydocstyle for new tool support and fix output parsing.

Review Request #11563 — Created March 30, 2021 and submitted

Information

ReviewBot
release-3.0.x

Reviewers

This updates Pydocstyle8Tool to subclass the newer BaseTool, and to
use the newer features it offers (dependencies, improved configurable
file extension handling, centralized base command building, and
standardized error code output).

The new version of the tool has corrected report parsing. The old
version reported the context of a failure ("in public module", etc.),
rather than the actual error. This was partly because pydocstyle error
reporting spans multiple lines for a single match.

Now, we use a multi-line regex to match this, and extract the correct
information.

Unit tests were added to cover the new pydocstyle parsing, and to
provide integration tests.

Unit tests pass on Python 2.7 and 3.x.

Summary ID
Update pydocstyle for new tool support and fix output parsing.
This updates `Pydocstyle8Tool` to subclass the newer `BaseTool`, and to use the newer features it offers (dependencies, improved configurable file extension handling, centralized base command building, and standardized error code output). The new version of the tool has corrected report parsing. The old version reported the context of a failure ("in public module", etc.), rather than the actual error. This was partly because pydocstyle error reporting spans multiple lines for a single match. Now, we use a multi-line regex to match this, and extract the correct information. Unit tests were added to cover the new pydocstyle parsing, and to provide integration tests.
7a3e5031ca0576c6ad4f891fdc6940191120aa17
david
  1. Ship It!
  2. 
      
chipx86
Review request changed
Status:
Completed
Change Summary:
Pushed to release-3.0.x (70f4a88)