diff mbox series

[1/1] support/scripts/check-uniq-files: Only report each package once

Message ID 1544537144-10197-1-git-send-email-tolvupostur@gmail.com
State Changes Requested
Headers show
Series [1/1] support/scripts/check-uniq-files: Only report each package once | expand

Commit Message

Einar Jón Dec. 11, 2018, 2:05 p.m. UTC
Rebuilding the same package should not trigger
a 'touched by more than one package' warning

Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com>
---
 support/scripts/check-uniq-files | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Yann E. MORIN Dec. 30, 2018, 10:02 p.m. UTC | #1
On 2018-12-11 15:05 +0100, Einar Jon Gunnarsson spake thusly:
> Rebuilding the same package should not trigger
> a 'touched by more than one package' warning
> 
> Signed-off-by: Einar Jon Gunnarsson <tolvupostur@gmail.com>
> ---
>  support/scripts/check-uniq-files | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/support/scripts/check-uniq-files b/support/scripts/check-uniq-files
> index fbc6b5d..03faa71 100755
> --- a/support/scripts/check-uniq-files
> +++ b/support/scripts/check-uniq-files
> @@ -28,7 +28,8 @@ def main():
>      with open(args.packages_file_list[0], 'rb') as pkg_file_list:
>          for line in pkg_file_list.readlines():
>              pkg, _, file = line.rstrip(b'\n').partition(b',')
> -            file_to_pkg[file].append(pkg)
> +            if not pkg in file_to_pkg[file]:
> +                file_to_pkg[file].append(pkg)

I think the proper way would be to change file_to_pkg[file] to be a set
rather than a list. Care to test the following, instead:

    diff --git a/support/scripts/check-uniq-files b/support/scripts/check-uniq-files
    index fbc6b5d6e7..eb92724e42 100755
    --- a/support/scripts/check-uniq-files
    +++ b/support/scripts/check-uniq-files
    @@ -24,11 +24,11 @@ def main():
             sys.stderr.write('No type was provided\n')
             return False
     
    -    file_to_pkg = defaultdict(list)
    +    file_to_pkg = defaultdict(set)
         with open(args.packages_file_list[0], 'rb') as pkg_file_list:
             for line in pkg_file_list.readlines():
                 pkg, _, file = line.rstrip(b'\n').partition(b',')
    -            file_to_pkg[file].append(pkg)
    +            file_to_pkg[file].add(pkg)
     
         for file in file_to_pkg:
             if len(file_to_pkg[file]) > 1:

Regards,
Yann E. MORIN.

>      for file in file_to_pkg:
>          if len(file_to_pkg[file]) > 1:
> -- 
> 2.7.4
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Yann E. MORIN Jan. 2, 2019, 12:12 p.m. UTC | #2
Einar, All,

On 2018-12-30 23:02 +0100, Yann E. MORIN spake thusly:
> On 2018-12-11 15:05 +0100, Einar Jon Gunnarsson spake thusly:
> > Rebuilding the same package should not trigger
> > a 'touched by more than one package' warning

In fact, commit d3dca1e993 (core/pkg-generic: only save latest package
list) should have already fixed that case, no?

That commit has even been backported to the 2018.02.x branch already, as
commit a2b029afe5.

If you are using a version of Buildroot that is older than that, then
please update. If you still have the issue after updating to a version
that has either one of the aforementionned commits, then please report
the issue again.

Regards,
Yann E. MORIN.
Einar Jón Jan. 8, 2019, 10:06 a.m. UTC | #3
my bad. Not an issue on master.

On Wed, 2 Jan 2019 at 13:12, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
>
> Einar, All,
>
> On 2018-12-30 23:02 +0100, Yann E. MORIN spake thusly:
> > On 2018-12-11 15:05 +0100, Einar Jon Gunnarsson spake thusly:
> > > Rebuilding the same package should not trigger
> > > a 'touched by more than one package' warning
>
> In fact, commit d3dca1e993 (core/pkg-generic: only save latest package
> list) should have already fixed that case, no?
>
> That commit has even been backported to the 2018.02.x branch already, as
> commit a2b029afe5.
>
> If you are using a version of Buildroot that is older than that, then
> please update. If you still have the issue after updating to a version
> that has either one of the aforementionned commits, then please report
> the issue again.

I was using 2018.02, but I tested this on the buildroot git repo
before submitting.
I must have had an older version checked out for the testing.
I've now updated to 2018.08 and this is no longer an issue.

Sorry about that.

>
> Regards,
> Yann E. MORIN.
>
> --
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> | +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> '------------------------------^-------^------------------^--------------------'
Yann E. MORIN Jan. 8, 2019, 9:18 p.m. UTC | #4
Einar, All,

On 2019-01-08 11:06 +0100, Einar Jón spake thusly:
> my bad. Not an issue on master.

No problem! It at least made me look at it again and came up with an
alternate solution. Thanks for the report! :-)

> On Wed, 2 Jan 2019 at 13:12, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> > On 2018-12-30 23:02 +0100, Yann E. MORIN spake thusly:
> > > On 2018-12-11 15:05 +0100, Einar Jon Gunnarsson spake thusly:
> > > > Rebuilding the same package should not trigger
> > > > a 'touched by more than one package' warning
> >
> > In fact, commit d3dca1e993 (core/pkg-generic: only save latest package
> > list) should have already fixed that case, no?
[--SNIP--]
> I was using 2018.02, but I tested this on the buildroot git repo
> before submitting.
> I must have had an older version checked out for the testing.
> I've now updated to 2018.08 and this is no longer an issue.
> Sorry about that.

No worries.

Regards,
Yann E. MORIN.
diff mbox series

Patch

diff --git a/support/scripts/check-uniq-files b/support/scripts/check-uniq-files
index fbc6b5d..03faa71 100755
--- a/support/scripts/check-uniq-files
+++ b/support/scripts/check-uniq-files
@@ -28,7 +28,8 @@  def main():
     with open(args.packages_file_list[0], 'rb') as pkg_file_list:
         for line in pkg_file_list.readlines():
             pkg, _, file = line.rstrip(b'\n').partition(b',')
-            file_to_pkg[file].append(pkg)
+            if not pkg in file_to_pkg[file]:
+                file_to_pkg[file].append(pkg)
 
     for file in file_to_pkg:
         if len(file_to_pkg[file]) > 1: