From: James Knight <git@jdknight.me>
To: buildroot@buildroot.org
Cc: Ricardo Martincoski <ricardo.martincoski@datacom.com.br>,
James Knight <git@jdknight.me>
Subject: [Buildroot] [PATCH 1/1] utils/check-package: handle missing files
Date: Tue, 1 Jul 2025 14:56:42 -0400 [thread overview]
Message-ID: <20250701185642.2173-1-git@jdknight.me> (raw)
When running check-package before completing commits for a change, if
any files are setup for removal, check-package will throw
FileNotFoundError exceptions instead of generating a warning state. For
example:
$ utils/docker-run make check-package
Traceback (most recent call last):
...
FileNotFoundError: [Errno 2] No such file or directory: 'package/.../0001-some-removed-patch.patch'
make: *** [Makefile:1264: check-package] Error 1
This commit will now catch FileNotFoundError and populate a warning
message:
$ utils/docker-run make check-package
package/.../0001-some-removed-patch.patch: missing; unstaged file removal?
package/.../0002-another-removed-patch.patch: missing; unstaged file removal?
427843 lines processed
3 warnings generated
make: *** [Makefile:1264: check-package] Error 1
Signed-off-by: James Knight <git@jdknight.me>
---
utils/check-package | 29 +++++++++++++++++------------
1 file changed, 17 insertions(+), 12 deletions(-)
diff --git a/utils/check-package b/utils/check-package
index a5ecc2eed8..8781d21d8f 100755
--- a/utils/check-package
+++ b/utils/check-package
@@ -257,18 +257,23 @@ def check_file_using_lib(fname):
nwarnings += warn
lastline = ""
- with open(fname, "r", errors="surrogateescape") as f:
- for lineno, text in enumerate(f):
- nlines += 1
- for name, cf in objects:
- if cf.disable.search(lastline):
- continue
- line_sts = cf.check_line(lineno + 1, text)
- warn, fail = print_warnings(line_sts, name in xfail)
- if fail > 0:
- failed.add(name)
- nwarnings += warn
- lastline = text
+ try:
+ with open(fname, "r", errors="surrogateescape") as f:
+ for lineno, text in enumerate(f):
+ nlines += 1
+ for name, cf in objects:
+ if cf.disable.search(lastline):
+ continue
+ line_sts = cf.check_line(lineno + 1, text)
+ warn, fail = print_warnings(line_sts, name in xfail)
+ if fail > 0:
+ failed.add(name)
+ nwarnings += warn
+ lastline = text
+ except FileNotFoundError:
+ print(f"{fname}: missing; unstaged file removal?")
+ nwarnings += 1
+ return nwarnings, nlines
for name, cf in objects:
warn, fail = print_warnings(cf.after(), name in xfail)
--
2.49.0.windows.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next reply other threads:[~2025-07-01 18:57 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-01 18:56 James Knight [this message]
2025-07-02 14:31 ` [Buildroot] [PATCH 1/1] utils/check-package: handle missing files Romain Naour via buildroot
2025-07-05 10:07 ` Julien Olivain via buildroot
2025-07-11 10:44 ` Thomas Perale via buildroot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250701185642.2173-1-git@jdknight.me \
--to=git@jdknight.me \
--cc=buildroot@buildroot.org \
--cc=ricardo.martincoski@datacom.com.br \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox