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 - 2025 Red Hat, Inc.