[PATCH] Add flake8 and isort to .pre-commit-config.yaml

Simon Marchi simark@simark.ca
Wed Apr 3 19:57:44 GMT 2024


On 4/3/24 3:52 PM, Tom Tromey wrote:
>>>>>> "Simon" == Simon Marchi <simark@simark.ca> writes:
> 
> Simon> If we want to make pre-commit consider that file for our Python hooks,
> Simon> the only solution I see currently would be to use something like this,
> Simon> as described in the doc above:
> 
> I did this in v2.  Let me know what you think.
> 
> Tom
> 
> commit c3c3740f73b5f20697074c5a20a26d0805afbb98
> Author: Tom Tromey <tromey@adacore.com>
> Date:   Tue Apr 2 12:04:21 2024 -0600
> 
>     Add flake8 and isort to .pre-commit-config.yaml
>     
>     This adds flake8 and isort to .pre-commit-config.yaml.  This way, they
>     will automatically be run on commit.
>     
>     I chose the most recent available versions after verifying that they
>     don't cause any reports or changes in the current tree.
>     
>     Internally at AdaCore, we also use a few flake8 plugins as well, so
>     perhaps that's another avenue for investigation.
>     
>     v2: Also update the various file-selection clauses to pick up
>     gdb-gdb.py.in; include the isort change made to this file; and finally
>     add a comment about the exclusions from flake8.
> 
> diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
> index 7afe60c20be..8721dac678b 100644
> --- a/.pre-commit-config.yaml
> +++ b/.pre-commit-config.yaml
> @@ -5,4 +5,20 @@ repos:
>      rev: 24.3.0
>      hooks:
>        - id: black
> -        files: 'gdb/.*'
> +        types_or: [file]
> +        files: 'gdb/.*\.py(\.in)?$'
> +  - repo:  https://github.com/pycqa/flake8
> +    rev: 7.0.0
> +    hooks:
> +    - id: flake8
> +      types_or: [file]
> +      # Note this one is only run on gdb/python, not (for now) the
> +      # test suite.
> +      files: 'gdb/python/.*\.py(\.in)?$'
> +      args: [--config, gdb/setup.cfg]
> +  - repo: https://github.com/pycqa/isort
> +    rev: 5.13.2
> +    hooks:
> +    - id: isort
> +      types_or: [file]
> +      files: 'gdb/.*\.py(\.in)?$'
> diff --git a/gdb/gdb-gdb.py.in b/gdb/gdb-gdb.py.in
> index 54db9b00cf3..b5a7fa4f390 100644
> --- a/gdb/gdb-gdb.py.in
> +++ b/gdb/gdb-gdb.py.in
> @@ -15,9 +15,10 @@
>  # You should have received a copy of the GNU General Public License
>  # along with this program.  If not, see <http://www.gnu.org/licenses/>.
>  
> -import gdb
>  import os.path
>  
> +import gdb
> +
>  
>  class TypeFlag:
>      """A class that allows us to store a flag name, its short name,

Thanks, LGTM.

Approved-By: Simon Marchi <simon.marchi@efficios.com>

Simon


More information about the Gdb-patches mailing list