Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make who_depends_this_lib much faster #15

Merged
merged 1 commit into from
Oct 29, 2019
Merged

Make who_depends_this_lib much faster #15

merged 1 commit into from
Oct 29, 2019

Conversation

yan12125
Copy link
Member

An example run:

$ time env PYTHONPATH=$HOME/tmp/winterpy/pylib python who_depends_this_lib /data/repo/x86_64/archlinuxcn.files libproto protobuf >&| ~/tmp/output
env PYTHONPATH=$HOME/tmp/winterpy/pylib python who_depends_this_lib  libproto  72.35s user 6.32s system 99% cpu 1:19.26 total

who_depends_this_lib Show resolved Hide resolved
who_depends_this_lib Outdated Show resolved Hide resolved
who_depends_this_lib Outdated Show resolved Hide resolved
@yan12125
Copy link
Member Author

Thank you for the review. I added a commit to address those comments. Here is an issue: it turns out that a few packages are built using pacman < 5.1, so that there is no valid .BUILDINFO. I'd like to propose them to be rebuilt and thus this PR can be simplified.

@lilydjwg
Copy link
Member

Yes, we can rebuild those packages. Can you get a list of them?

@yan12125
Copy link
Member Author

Here is the package list:

pkgs.txt
abootimg-git
alert-after
android-sdk
angrysearch
apache-tools
archey-git
aurvote
awesome34
bilidan-git
brother-hl2140
byzanz-git
ccal
cdate
cla
cld2-git
clup
coccinelle
codecs64
cuda_memtest
dbus-cpp
deadbeef-plugin-infobar-ng-gtk2-hg
deadbeef-plugin-infobar-ng-gtk3-hg
drive
fbcat
figlet-fonts
flow-pomodoro
fontweak
freerapid
ghq
glib
gnome-search-tool-no-nautilus
google-earth
govendor
hal-flash-git
hpoj
hydroxygen-iconset
i3-gnome-git
img2sdat-git
ipad_charge
ispin
jave
julia-pkg-scripts
kega-fusion
key-mon
kjieba
lib32-gdbm
lib32-oxygen-gtk2
lib32-qt4
lib32-tk
libbonoboui
libgnome
libgnome-data
libgnomeui
libnatspec
loc
lua51-doc
minecraft
mingw-w64-zlib
moeditor-bin
monogame-git
mpdscribble
nant
newrelic-php53
newrelic-sysmond
nifskope-git
notify-desktop-git
ntpdate
obkey-git
openbrf
openlibm-git-debug
openvdb3
openvpn-obfs
pacnew-auto-git
paman
pavumeter
pcsxr-git
php53-apc
php53-mongo
pidgin-wechat-git
pkgtools
plasma5-applets-active-window-control-git
pnmixer-gtk3
python2-bjoern
python2-newrelic
qrsctl
qtadb
rawstudio-git
rsync-noatime
ruby2.2
ruby-hiera
screenkey
sfml1.6
shadowvpn
shine
silentcast
simage
simage-debug
simple-mtpfs
slurm
sniproxy
spin
sublime-text-imfix
tchrome
toilet
uksmtools
unzip-natspec
vicare-scheme-git
w3watch
wallch
xavs
xfce4-mpc-plugin-update
xfce4-soundmenu-plugin
xflux
xinput_calibrator
yaourt
zpaq

And raw output using https://github.com/yan12125/misc_scripts/commit/affb9afb52de8eb6daee7b3e98bfb00facb3307c:

buildinfo-issue.txt
[W 10-27 08:13:05.603 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/abootimg-git-0.6.r6.g1ebeb39-1-x86_64.pkg.tar.xz
[W 10-27 08:13:05.615 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/alert-after-1.4.3-1-x86_64.pkg.tar.xz
[W 10-27 08:13:05.867 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/android-sdk-26.1.1-1-x86_64.pkg.tar.xz
[W 10-27 08:13:05.882 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/angrysearch-1.0.1-1-any.pkg.tar.xz
[W 10-27 08:13:05.887 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/apache-tools-2.4.25-1-x86_64.pkg.tar.xz
[W 10-27 08:13:05.896 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/archey-git-r146.b74e40br146.b74e40b-1-any.pkg.tar.xz
[W 10-27 08:13:05.926 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/aurvote-1.9-3-any.pkg.tar.xz
[W 10-27 08:13:05.930 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/awesome34-3.4.15-2-x86_64.pkg.tar.xz
[W 10-27 08:13:05.968 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/bilidan-git-20170704-1-any.pkg.tar.xz
[W 10-27 08:13:05.986 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/brother-hl2140-2.0.2_1-4-x86_64.pkg.tar.xz
[W 10-27 08:13:05.995 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/byzanz-git-0.2.1.126.g81235d2-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.000 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/ccal-2.5.3-2-x86_64.pkg.tar.xz
[W 10-27 08:13:06.005 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/cdate-1.0.5-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.021 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/cla-1.0-4-any.pkg.tar.xz
[W 10-27 08:13:06.029 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/cld2-git-20150820-3-x86_64.pkg.tar.xz
[W 10-27 08:13:06.048 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/clup-1.1-4-any.pkg.tar.xz
[W 10-27 08:13:06.055 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/coccinelle-1.0.6-2-x86_64.pkg.tar.xz
[W 10-27 08:13:06.076 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/codecs64-20071007-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.200 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/cuda_memtest-1.2.3-3-x86_64.pkg.tar.xz
[W 10-27 08:13:06.211 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/dbus-cpp-5.0.0-4-x86_64.pkg.tar.xz
[W 10-27 08:13:06.268 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/deadbeef-plugin-infobar-ng-gtk2-hg-189-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.270 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/deadbeef-plugin-infobar-ng-gtk3-hg-189-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.318 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/drive-0.3.9.1-2-x86_64.pkg.tar.xz
[W 10-27 08:13:06.377 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/fbcat-0.5.1-1-x86_64.pkg.tar.xz
[W 10-27 08:13:06.423 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/figlet-fonts-1.0-3-any.pkg.tar.xz
[W 10-27 08:13:06.621 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/flow-pomodoro-1.2.0-4-x86_64.pkg.tar.xz
[W 10-27 08:13:06.637 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/fontweak-1.3.1-2-any.pkg.tar.xz
[W 10-27 08:13:06.656 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/freerapid-0.9u4-1-any.pkg.tar.xz
[W 10-27 08:13:09.689 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/ghq-0.8.0-1-x86_64.pkg.tar.xz
[W 10-27 08:13:09.716 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/glib-1.2.10-14-x86_64.pkg.tar.xz
[W 10-27 08:13:09.729 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/gnome-search-tool-no-nautilus-3.6.0-4-x86_64.pkg.tar.xz
[W 10-27 08:13:09.764 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/google-earth-7.1.8.3036-1-x86_64.pkg.tar.xz
[W 10-27 08:13:09.768 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/govendor-1.0.9-1-x86_64.pkg.tar.xz
[W 10-27 08:13:09.808 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/hal-flash-git-0.3.3-1-x86_64.pkg.tar.xz
[W 10-27 08:13:09.839 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/hpoj-0.91-21-x86_64.pkg.tar.xz
[W 10-27 08:13:09.861 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/hydroxygen-iconset-20090119-2-x86_64.pkg.tar.xz
[W 10-27 08:13:09.872 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/i3-gnome-git-5.2.r4.g859779d-1-any.pkg.tar.xz
[W 10-27 08:13:09.888 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/img2sdat-git-r28.a4fdf7c-1-x86_64.pkg.tar.xz
[W 10-27 08:13:09.912 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/ipad_charge-1.1-4-x86_64.pkg.tar.xz
[W 10-27 08:13:09.921 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-9 found in /data/repo/x86_64/ispin-1.1.4-2-any.pkg.tar.xz
[W 10-27 08:13:09.960 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/jave-5-10-any.pkg.tar.xz
[W 10-27 08:13:09.984 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/julia-pkg-scripts-0.1.0.1.g22f0c63-1-any.pkg.tar.xz
[W 10-27 08:13:10.003 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/kega-fusion-3.63-17-x86_64.pkg.tar.xz
[W 10-27 08:13:10.005 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/key-mon-1.17-1-any.pkg.tar.xz
[W 10-27 08:13:10.011 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/kjieba-20170519-1-x86_64.pkg.tar.xz
[W 10-27 08:13:10.040 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/lib32-gdbm-1.12-1-x86_64.pkg.tar.xz
[W 10-27 08:13:10.085 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/lib32-oxygen-gtk2-1.4.6-1-x86_64.pkg.tar.xz
[W 10-27 08:13:10.086 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/lib32-qt4-4.8.7-14-x86_64.pkg.tar.xz
[W 10-27 08:13:10.092 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/lib32-tk-8.6.6-1-x86_64.pkg.tar.xz
[W 10-27 08:13:10.096 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/libbonoboui-2.24.5-5-x86_64.pkg.tar.xz
[W 10-27 08:13:10.337 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/libgnome-2.32.1-7-x86_64.pkg.tar.xz
[W 10-27 08:13:10.339 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/libgnome-data-2.32.1-7-x86_64.pkg.tar.xz
[W 10-27 08:13:10.341 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/libgnomeui-2.24.5-5-x86_64.pkg.tar.xz
[W 10-27 08:13:10.507 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/libnatspec-0.3.0-2-x86_64.pkg.tar.xz
[W 10-27 08:13:18.687 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/loc-0.4.1-2-x86_64.pkg.tar.xz
[W 10-27 08:13:18.693 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/lua51-doc-3.0.1-2-any.pkg.tar.xz
[W 10-27 08:13:19.642 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/minecraft-latest-29-any.pkg.tar.xz
[W 10-27 08:13:19.662 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/mingw-w64-zlib-1.2.11-1-any.pkg.tar.xz
[W 10-27 08:13:19.666 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/moeditor-bin-0.2.0_beta-1-x86_64.pkg.tar.xz
[W 10-27 08:13:19.673 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-9 found in /data/repo/x86_64/monogame-git-3.5-2-any.pkg.tar.xz
[W 10-27 08:13:19.679 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/mpdscribble-0.22-14-x86_64.pkg.tar.xz
[W 10-27 08:13:56.477 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/nant-0.92-6-x86_64.pkg.tar.xz
[W 10-27 08:13:56.691 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/newrelic-php53-6.7.0.174-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.695 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/newrelic-sysmond-2.3.0.132-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.699 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/nifskope-git-v2.0.dev7.11.g3a85ac5-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.742 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/notify-desktop-git-r23.9863919-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.743 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/ntpdate-4.2.8.p10-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.801 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/obkey-git-20140525-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.930 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/openbrf-0.0.82e-1-x86_64.pkg.tar.xz
[W 10-27 08:13:56.951 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/openlibm-git-debug-0.5.3-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.356 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/openvdb3-3.2.0-4-x86_64.pkg.tar.xz
[W 10-27 08:13:57.384 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/openvpn-obfs-2.3.6-2-x86_64.pkg.tar.xz
[W 10-27 08:13:57.412 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/pacnew-auto-git-r3.2b27b54-1-any.pkg.tar.xz
[W 10-27 08:13:57.421 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/paman-0.9.4-5-x86_64.pkg.tar.xz
[W 10-27 08:13:57.509 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/pavumeter-0.9.3-6-x86_64.pkg.tar.xz
[W 10-27 08:13:57.521 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/pcsxr-git-1.9.94.r1697.6484236c-2-x86_64.pkg.tar.xz
[W 10-27 08:13:57.539 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/php53-apc-3.1.13-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.554 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/php53-mongo-1.5.8-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.604 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/pidgin-wechat-git-0.1.1.r37.g17b15e5-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.612 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/pkgtools-25-8-any.pkg.tar.xz
[W 10-27 08:13:57.615 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/plasma5-applets-active-window-control-git-1:r17.37b3b2c-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.636 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/pnmixer-gtk3-0.7.2-2-x86_64.pkg.tar.xz
[W 10-27 08:13:57.873 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/python2-bjoern-1.4.2-1-x86_64.pkg.tar.xz
[W 10-27 08:13:57.883 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/python2-newrelic-2.66.0.49-1-x86_64.pkg.tar.xz
[W 10-27 08:14:00.848 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/qrsctl-3.1.20160816-1-x86_64.pkg.tar.xz
[W 10-27 08:14:00.947 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/qtadb-0.8.1-7-x86_64.pkg.tar.xz
[W 10-27 08:14:00.967 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/rawstudio-git-2.0.589.g003dd4f3-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.011 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/rsync-noatime-3.1.3-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.015 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/ruby2.2-2.2.10-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.043 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/ruby-hiera-2.0.0-1-any.pkg.tar.xz
[W 10-27 08:14:01.155 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/screenkey-0.9-1-any.pkg.tar.xz
[W 10-27 08:14:01.177 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/sfml1.6-1.6-6-x86_64.pkg.tar.xz
[W 10-27 08:14:01.180 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/shadowvpn-0.2.1-2-x86_64.pkg.tar.xz
[W 10-27 08:14:01.184 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/shine-3.1.1-2-x86_64.pkg.tar.xz
[W 10-27 08:14:01.188 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/silentcast-3.07-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.191 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/simage-1.7.0-6-x86_64.pkg.tar.xz
[W 10-27 08:14:01.193 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/simage-debug-1.7.0-6-x86_64.pkg.tar.xz
[W 10-27 08:14:01.195 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/simple-mtpfs-0.3.0-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.202 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/slurm-0.4.3-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.211 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = 6tunnel-0.11rc2-6 found in /data/repo/x86_64/sniproxy-0.4.0-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.224 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-9 found in /data/repo/x86_64/spin-6.4.5-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.249 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/sublime-text-imfix-2.0.2-1-x86_64.pkg.tar.xz
[W 10-27 08:14:01.590 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/tchrome-1.4-3-any.pkg.tar.xz
[W 10-27 08:14:02.541 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/toilet-0.3.3eb9d58-2-x86_64.pkg.tar.xz
[W 10-27 08:14:02.608 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/uksmtools-20140911-1-x86_64.pkg.tar.xz
[W 10-27 08:14:02.619 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/unzip-natspec-6.0-6-x86_64.pkg.tar.xz
[W 10-27 08:14:02.687 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-4 found in /data/repo/x86_64/vicare-scheme-git-20180130.58409619-1-x86_64.pkg.tar.xz
[W 10-27 08:14:04.723 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/w3watch-1.0.3-1-any.pkg.tar.xz
[W 10-27 08:14:04.726 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/wallch-4.15-4-x86_64.pkg.tar.xz
[W 10-27 08:14:04.809 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-2 found in /data/repo/x86_64/xavs-0.1.55-1-x86_64.pkg.tar.xz
[W 10-27 08:14:04.814 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/xfce4-mpc-plugin-update-0.4.5-3-x86_64.pkg.tar.xz
[W 10-27 08:14:04.816 who_depends_this_lib:92] Cannot find .BUILDINFO in first 10 entries of /data/repo/x86_64/xfce4-soundmenu-plugin-0.7.0-2-x86_64.pkg.tar.xz
[W 10-27 08:14:04.818 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/xflux-20130901-5-x86_64.pkg.tar.xz
[W 10-27 08:14:04.821 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = a52dec-0.7.4-8 found in /data/repo/x86_64/xinput_calibrator-0.7.5-3-x86_64.pkg.tar.xz
[W 10-27 08:14:04.838 who_depends_this_lib:83] Old .BUILDINFO format - entry installed = acl-2.2.52-3 found in /data/repo/x86_64/yaourt-1.9-1-any.pkg.tar.xz
[W 10-27 08:14:04.884 who_depends_this_lib:83] Old .BUILDINFO format - entry installed =  found in /data/repo/x86_64/zpaq-7.15-1-x86_64.pkg.tar.xz

If all looks good, I can open an issue in archlinuxcn/repo.

By the way, how to get a list of packages categorized by maintainers like archlinuxcn/repo#1073 (comment)?

@lilydjwg
Copy link
Member

那个文本是用这样的 Python 脚本生成的:

script issue1073
#!/usr/bin/python3

from pathlib import Path
import logging
from collections import defaultdict

from lilac2 import lilacpy

logger = logging.getLogger(__name__)

def main():
  repodir = Path('/ldata/src/archgitrepo/archlinuxcn')
  mods, _ = lilacpy.load_all(repodir)
  r = defaultdict(list)

  for name, m in mods.items():
    if getattr(m, 'build_prefix', '').startswith(('archlinuxcn-', 'multilib-archlinuxcn')):
      for x in m.maintainers:
        r[x['github']].append(name)

  for who, pkgs in sorted(r.items()):
    print(f'@{who}:')
    for pkg in pkgs:
      print('* [ ]', pkg)
    print()

if __name__ == '__main__':
  from nicelogger import enable_pretty_logging
  enable_pretty_logging('DEBUG')
  main()

@lilydjwg
Copy link
Member

It looks OK, please open an issue to move things forward 👍

@yan12125
Copy link
Member Author

Looks like lilacpy.load_all(repodir) skips packages with managed: false. I read lilac.yaml files directly and created archlinuxcn/repo#1351.

@lilydjwg
Copy link
Member

I changed load_all and added a new load_managed.

@yan12125
Copy link
Member Author

Thanks!

An example run:

$ time env PYTHONPATH=$HOME/tmp/winterpy/pylib python who_depends_this_lib /data/repo/x86_64/archlinuxcn.files libproto protobuf >&| ~/tmp/output
env PYTHONPATH=$HOME/tmp/winterpy/pylib python who_depends_this_lib  libproto  72.35s user 6.32s system 99% cpu 1:19.26 total

[WIP] address review comments

Avoid duplicated checking

Caused by /depends entries, which are from pacman <= 3.4 (!) [1]

Also improves warning messages

[1] https://git.archlinux.org/pacman.git/tree/scripts/pacman-db-upgrade.sh.in?h=v5.2.0#n151

Checking packages without proper .BUILDINFO anyway

So that this PR can be used before
archlinuxcn/repo#1351 is done.
@yan12125
Copy link
Member Author

Squashed and force-pushed. I consider this ready for another review if you want to merge it before archlinuxcn/repo#1351 is done and you are fine with nasty .BUILDINFO handling codes.

@lilydjwg lilydjwg merged commit caad37f into archlinuxcn:master Oct 29, 2019
@lilydjwg
Copy link
Member

Thanks!

@yan12125 yan12125 deleted the faster-who_depends_this_lib branch October 30, 2019 03:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants