scripts/checktransupdate.py | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-)
Origin script can only accept a file as parameter, this commit enables
it to scan a directory.
Usage example:
./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools
Signed-off-by: Haoyang LIU <tttturtleruss@gmail.com>
---
scripts/checktransupdate.py | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/scripts/checktransupdate.py b/scripts/checktransupdate.py
index e39529e46c3d..0d197d036650 100755
--- a/scripts/checktransupdate.py
+++ b/scripts/checktransupdate.py
@@ -13,6 +13,8 @@ The usage is as follows:
This will print all the files that need to be updated or translated in the zh_CN locale.
- ./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools/testing-overview.rst
This will only print the status of the specified file.
+- ./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools
+This will print all the files in the specified folder and its subfolders.
The output is something like:
Documentation/dev-tools/kfence.rst
@@ -21,6 +23,17 @@ No translation in the locale of zh_CN
Documentation/translations/zh_CN/dev-tools/testing-overview.rst
commit 42fb9cfd5b18 ("Documentation: dev-tools: Add link to RV docs")
1 commits needs resolving in total
+
+Documentation/translations/zh_CN/dev-tools/index.rst
+commit d5af79c05e93 ("Documentation: move dev-tools debugging files to process/debugging/")
+commit d5dc95836147 ("kbuild: Add Propeller configuration for kernel build")
+commit 315ad8780a12 ("kbuild: Add AutoFDO support for Clang build")
+3 commits needs resolving in total
+
+Documentation/translations/zh_CN/dev-tools/kcsan.rst
+commit b37221cc861d ("Documentation: kcsan: fix "Plain Accesses and Data Races" URL in kcsan.rst")
+commit 72ffee678f6f ("docs: update dev-tools/kcsan.rst url about KTSAN")
+2 commits needs resolving in total
"""
import os
@@ -131,7 +144,7 @@ def check_per_file(file_path):
opath = get_origin_path(file_path)
if not os.path.isfile(opath):
- logging.error("Cannot find the origin path for {file_path}")
+ logging.error(f"Cannot find the origin path for {file_path}")
return
o_from_head = get_latest_commit_from(opath, "HEAD")
@@ -293,6 +306,17 @@ def main():
if args.print_missing_translations:
logging.info(os.path.relpath(os.path.abspath(file), linux_path))
logging.info("No translation in the locale of %s\n", args.locale)
+ else:
+ # check if the files are directories or files
+ new_files = []
+ for file in files:
+ if os.path.isfile(file):
+ new_files.append(file)
+ elif os.path.isdir(file):
+ # for directories, list all files in the directory and its subfolders
+ new_files.extend(list_files_with_excluding_folders(
+ file, [], "rst"))
+ files = new_files
files = list(map(lambda x: os.path.relpath(os.path.abspath(x), linux_path), files))
--
2.50.1
On Mon, Aug 11, 2025 at 12:17:30AM +0800, Haoyang LIU wrote:
>
> import os
> @@ -131,7 +144,7 @@ def check_per_file(file_path):
> opath = get_origin_path(file_path)
>
> if not os.path.isfile(opath):
> - logging.error("Cannot find the origin path for {file_path}")
> + logging.error(f"Cannot find the origin path for {file_path}")
Send this as a separate patch with a Fixes tag.
Fixes: 63e96ce050e5 ("scripts: fix all issues reported by pylint")
Ideally, pylint should be modified to complain about this or something...
I have a script for kernel patches which checks these kinds of mechanical
changes and someone could make a similar script which checks pylint
changes. https://github.com/error27/rename_rev
regards,
dan carpenter
On 8/11/25 3:18 PM, Dan Carpenter wrote:
> On Mon, Aug 11, 2025 at 12:17:30AM +0800, Haoyang LIU wrote:
>>
>> import os
>> @@ -131,7 +144,7 @@ def check_per_file(file_path):
>> opath = get_origin_path(file_path)
>>
>> if not os.path.isfile(opath):
>> - logging.error("Cannot find the origin path for {file_path}")
>> + logging.error(f"Cannot find the origin path for {file_path}")
> Send this as a separate patch with a Fixes tag.
> Fixes: 63e96ce050e5 ("scripts: fix all issues reported by pylint")
>
> Ideally, pylint should be modified to complain about this or something...
> I have a script for kernel patches which checks these kinds of mechanical
> changes and someone could make a similar script which checks pylint
> changes. https://github.com/error27/rename_rev
Yes, this seems really wired. We have a project - Linux Kernel Patch
Statistic among Universities[1]. In one PR[2], Haoyang also found a
quote string issue.
Interestingly, this PR is trying to fix issues raised by pylint.
[1] https://github.com/hust-open-atom-club/linux-edu-rank
[2] https://github.com/hust-open-atom-club/linux-edu-rank/pull/45
>
> regards,
> dan carpenter
>
+to Yanteng, Dongliang, Alex and Jon
+cc linux-doc mailing list
On 8/11/25 12:17 AM, Haoyang LIU wrote:
> Origin script can only accept a file as parameter, this commit enables
> it to scan a directory.
>
> Usage example:
> ./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools
>
> Signed-off-by: Haoyang LIU <tttturtleruss@gmail.com>
> ---
> scripts/checktransupdate.py | 26 +++++++++++++++++++++++++-
> 1 file changed, 25 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/checktransupdate.py b/scripts/checktransupdate.py
> index e39529e46c3d..0d197d036650 100755
> --- a/scripts/checktransupdate.py
> +++ b/scripts/checktransupdate.py
> @@ -13,6 +13,8 @@ The usage is as follows:
> This will print all the files that need to be updated or translated in the zh_CN locale.
> - ./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools/testing-overview.rst
> This will only print the status of the specified file.
> +- ./scripts/checktransupdate.py Documentation/translations/zh_CN/dev-tools
> +This will print all the files in the specified folder and its subfolders.
>
> The output is something like:
> Documentation/dev-tools/kfence.rst
> @@ -21,6 +23,17 @@ No translation in the locale of zh_CN
> Documentation/translations/zh_CN/dev-tools/testing-overview.rst
> commit 42fb9cfd5b18 ("Documentation: dev-tools: Add link to RV docs")
> 1 commits needs resolving in total
> +
> +Documentation/translations/zh_CN/dev-tools/index.rst
> +commit d5af79c05e93 ("Documentation: move dev-tools debugging files to process/debugging/")
> +commit d5dc95836147 ("kbuild: Add Propeller configuration for kernel build")
> +commit 315ad8780a12 ("kbuild: Add AutoFDO support for Clang build")
> +3 commits needs resolving in total
> +
> +Documentation/translations/zh_CN/dev-tools/kcsan.rst
> +commit b37221cc861d ("Documentation: kcsan: fix "Plain Accesses and Data Races" URL in kcsan.rst")
> +commit 72ffee678f6f ("docs: update dev-tools/kcsan.rst url about KTSAN")
> +2 commits needs resolving in total
> """
>
> import os
> @@ -131,7 +144,7 @@ def check_per_file(file_path):
> opath = get_origin_path(file_path)
>
> if not os.path.isfile(opath):
> - logging.error("Cannot find the origin path for {file_path}")
> + logging.error(f"Cannot find the origin path for {file_path}")
> return
>
> o_from_head = get_latest_commit_from(opath, "HEAD")
> @@ -293,6 +306,17 @@ def main():
> if args.print_missing_translations:
> logging.info(os.path.relpath(os.path.abspath(file), linux_path))
> logging.info("No translation in the locale of %s\n", args.locale)
> + else:
> + # check if the files are directories or files
> + new_files = []
> + for file in files:
> + if os.path.isfile(file):
> + new_files.append(file)
> + elif os.path.isdir(file):
> + # for directories, list all files in the directory and its subfolders
> + new_files.extend(list_files_with_excluding_folders(
> + file, [], "rst"))
> + files = new_files
>
> files = list(map(lambda x: os.path.relpath(os.path.abspath(x), linux_path), files))
>
© 2016 - 2026 Red Hat, Inc.