Closed
Description
Since #22408 was merged, validate_docstrings.py
is able to validate all docstrings when called without parameters, returning the output as a json file.
Next step would be to make the script ready to be used in the CI, so we can fail when there are validation errors in the changes to a docstring.
The main changes required are:
- Make the script return an exit status of
0
when no error has been encountered, and a different number (possibly the number of found errors) when something is wrong. - Generate the output in the
stderr
in a format appropriate for the CI (currently is a json file instdout
). As the code checks will soon be performed in Azure (BLD: Use Azure pipelines for linting #22844), the output format will ideally be customizable with a--format
parameter, so we can call the script providing the azure format (equivalent toflake8 --format
parameter).
As the number of errors is currently huge (8,404 errors in total), we'll have to add the validations to the CI in different stages. To allow that, the script will also have to support:
- A
--prefix
parameter, accepting a string of the formatpandas.Series.str
. Meaning that only the functions/methods... starting by that string will be validated - A
--errors
parameter, accepting a error code, or comma separated list of error codes, that will be validated. This will also require codifying all the errors that we currently validate
May be it'd also be useful to have something like a --exclude
parameter, but will leave this for later, once is needed for a specific case.
@jorisvandenbossche @WillAyd @jbrockmendel any feedback on this before I start working on it?