[PATCH v2 0/6] Mypy and pylint build support

Ian Rogers posted 6 patches 9 months, 1 week ago
tools/build/Makefile.build         |  6 +++++-
tools/perf/Build                   | 32 +++++++++++++++++++++++++++---
tools/perf/Makefile.perf           | 14 +++++++++++--
tools/perf/arch/x86/Build          |  6 +++---
tools/perf/arch/x86/tests/Build    |  6 +++---
tools/perf/pmu-events/Build        | 25 ++++++++++++++++++++++-
tools/perf/scripts/Build           | 26 ++++++++++++++++++++++++
tools/perf/tests/Build             | 32 +++++++++++++++++++++++++++---
tools/perf/tests/shell/lib/attr.py |  8 +-------
tools/perf/trace/beauty/Build      |  6 +++---
tools/perf/util/Build              | 31 ++++++++++++++++++++++++++---
tools/perf/util/setup.py           | 10 ++++++++--
12 files changed, 171 insertions(+), 31 deletions(-)
[PATCH v2 0/6] Mypy and pylint build support
Posted by Ian Rogers 9 months, 1 week ago
Support building perf checking the python code with mypy and/or
pylint. Currently there are too many errors to make this a default.

Shellcheck generates no output on success, so linking shellcheck files
doesn't cause `ld` to fail. Mypy and pylint generate output that will
break `ld` so change the Makefile.build to ignore test log files.

Address some initial mypy errors.

v2: Rebase. Add James Clark's reviewed-by tags. Add example mypy and
    pylint error output.

Ian Rogers (6):
  tools/build: Don't pass test log files to linker
  perf build: Rename TEST_LOGS to SHELL_TEST_LOGS
  perf build: Add mypy build tests
  perf build: Add pylint build tests
  perf test: Address attr.py mypy error
  perf python: Fix setup.py mypy errors

 tools/build/Makefile.build         |  6 +++++-
 tools/perf/Build                   | 32 +++++++++++++++++++++++++++---
 tools/perf/Makefile.perf           | 14 +++++++++++--
 tools/perf/arch/x86/Build          |  6 +++---
 tools/perf/arch/x86/tests/Build    |  6 +++---
 tools/perf/pmu-events/Build        | 25 ++++++++++++++++++++++-
 tools/perf/scripts/Build           | 26 ++++++++++++++++++++++++
 tools/perf/tests/Build             | 32 +++++++++++++++++++++++++++---
 tools/perf/tests/shell/lib/attr.py |  8 +-------
 tools/perf/trace/beauty/Build      |  6 +++---
 tools/perf/util/Build              | 31 ++++++++++++++++++++++++++---
 tools/perf/util/setup.py           | 10 ++++++++--
 12 files changed, 171 insertions(+), 31 deletions(-)

-- 
2.49.0.rc0.332.g42c0ae87b1-goog
Re: [PATCH v2 0/6] Mypy and pylint build support
Posted by Namhyung Kim 8 months, 4 weeks ago
On Tue, 11 Mar 2025 14:36:22 -0700, Ian Rogers wrote:
> Support building perf checking the python code with mypy and/or
> pylint. Currently there are too many errors to make this a default.
> 
> Shellcheck generates no output on success, so linking shellcheck files
> doesn't cause `ld` to fail. Mypy and pylint generate output that will
> break `ld` so change the Makefile.build to ignore test log files.
> 
> [...]
Applied to perf-tools-next, thanks!

Best regards,
Namhyung
Re: [PATCH v2 0/6] Mypy and pylint build support
Posted by Ian Rogers 9 months ago
On Tue, Mar 11, 2025 at 2:36 PM Ian Rogers <irogers@google.com> wrote:
>
> Support building perf checking the python code with mypy and/or
> pylint. Currently there are too many errors to make this a default.
>
> Shellcheck generates no output on success, so linking shellcheck files
> doesn't cause `ld` to fail. Mypy and pylint generate output that will
> break `ld` so change the Makefile.build to ignore test log files.
>
> Address some initial mypy errors.
>
> v2: Rebase. Add James Clark's reviewed-by tags. Add example mypy and
>     pylint error output.

Ping.

Thanks,
Ian

> Ian Rogers (6):
>   tools/build: Don't pass test log files to linker
>   perf build: Rename TEST_LOGS to SHELL_TEST_LOGS
>   perf build: Add mypy build tests
>   perf build: Add pylint build tests
>   perf test: Address attr.py mypy error
>   perf python: Fix setup.py mypy errors
>
>  tools/build/Makefile.build         |  6 +++++-
>  tools/perf/Build                   | 32 +++++++++++++++++++++++++++---
>  tools/perf/Makefile.perf           | 14 +++++++++++--
>  tools/perf/arch/x86/Build          |  6 +++---
>  tools/perf/arch/x86/tests/Build    |  6 +++---
>  tools/perf/pmu-events/Build        | 25 ++++++++++++++++++++++-
>  tools/perf/scripts/Build           | 26 ++++++++++++++++++++++++
>  tools/perf/tests/Build             | 32 +++++++++++++++++++++++++++---
>  tools/perf/tests/shell/lib/attr.py |  8 +-------
>  tools/perf/trace/beauty/Build      |  6 +++---
>  tools/perf/util/Build              | 31 ++++++++++++++++++++++++++---
>  tools/perf/util/setup.py           | 10 ++++++++--
>  12 files changed, 171 insertions(+), 31 deletions(-)
>
> --
> 2.49.0.rc0.332.g42c0ae87b1-goog
>