Gentoo Archives: gentoo-dev

From: Ionen Wolkens <ionen@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] New tools: iwdevtools to help spot rdepend issues and others
Date: Fri, 03 Sep 2021 09:59:01
Message-Id: YTHx3fdBumzZGyC8@eversor
1 Some of you may already know about it but, now that it has been tested
2 a bit more, felt should advertise here.
3
4 It's small'ish scripts available from "app-portage/iwdevtools"
5
6 See github[1]'s README.rst for a lowdown (and --help or man pages for
7 options), but for a quick overview:
8
9 qa-vdb:
10 Looks at VDB's (/var/db/pkg) information and suggest changes if
11 something is unexpected, such as a used shared library that isn't
12 in RDEPEND.
13
14 Can be optionally integrated with portage to display post-emerge:
15 * QA: detected possibly incorrect RDEPEND
16 * dev-db/sqlite <
17 * dev-libs/glib | dev-libs/glib:2
18 * > media-libs/libogg
19 * > sys-libs/readline:=
20 (Says to remove sqlite, add :2, add missing libogg / readline.
21 Will be optionally colored, like :2 in a different color.)
22
23 It's only suggestions and still needs someone to verify (e.g.
24 dlopen() is unknown to the tool, or if a package uses bin/openssl
25 executable and not its libraries), exclusion rules or disabling
26 some checks entirely (like explicit :SLOT) can be done as needed
27 if don't want to be nagged for your packages when you know it's
28 right.
29
30 qa-sed:
31 Attempts to detect when a sed(1) command in an ebuild did nothing,
32 indicating that it (probably) needs updating or cleanup.
33
34 qa-cmp:
35 Compares portage install images (tmp/<cat>/<pkg>/image) either with
36 each others or with system's copy to give an overview of changes.
37
38 Can also be optionally integrated to display post-emerge:
39 * QA: comparing =media-libs/libid3tag-0.15.1b-r4 with <snip>
40 * FILES:+usr/lib64/cmake/id3tag/id3tagConfig.cmake
41 * FILES:+usr/lib64/cmake/id3tag/id3tagConfigVersion.cmake
42 * FILES:+usr/lib64/cmake/id3tag/id3tagTargets-gentoo.cmake
43 * FILES:+usr/lib64/cmake/id3tag/id3tagTargets.cmake
44 * FILES:-usr/lib64/libid3tag.so.0
45 * FILES:-usr/lib64/libid3tag.so.0.3.0
46 * FILES:+usr/lib64/libid3tag.so.${PV}
47 * SONAME:-libid3tag.so.0(64)
48 * SONAME:+libid3tag.so.0.16.1(64)
49 * ------> FILES(+5,-2) SONAME(+1,-1)
50 (In this example it's showing us the SONAME change needs some
51 looking into. Can display/hide other information like simple
52 size and ABI changes with abidiff(1), or simple full lists.)
53
54 eoldnew:
55 Minor helper to emerge previous version then latest, can be useful
56 with qa-cmp when old wasn't already installed.
57
58 scrub-patch:
59 This takes the devmanual's "clean patches" sed[2] and additionally
60 performs basic checks on making patches a bit better and to spot a
61 handful of possible oversights.
62
63 These are still experimental but should usually work fine.
64 More small tools may be added in the future.
65
66 If any issues / questions / suggestions, feel welcome to mention them
67 to me on Libera IRC (nick: ionen), github[1], or b.g.o as preferred.
68
69 [1] https://github.com/ionenwks/iwdevtools
70 [2] https://devmanual.gentoo.org/ebuild-writing/misc-files/patches/index.html
71 --
72 ionen

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies