eix-diff used to display all changes on the portage tree since the last sync (or eix-update to be more precise). Presently, it shows only one package update and even more, it does not "know" the new versions! For example alsa-utils: alsa-utils-1.0.26 is in portage and will be pulled by 'emerge -u world' but eix says only 1.0.25-r3 is the highest available version (see the example output attachment). I already delete all cache files of eix and did an eix-update before eix-sync (thought the cache might be invalid) but that did not help. Reproducible: Always Steps to Reproduce: 1. wait one day (or be sure that your local portage is not up to date) 2. do eix-sync 3. compare output of eix-diff against "emerge -uvpDN world" Actual Results: not all packages changes are shown by eix-diff Expected Results: eix-diff should show all changes sephiroth-pc ~ # emerge --info Portage 2.1.11.13 (default/linux/amd64/10.0/no-multilib, gcc-4.5.4, glibc-2.15-r2, 3.5.3-gentoo-Sephis-C2D x86_64) ================================================================= System uname: Linux-3.5.3-gentoo-Sephis-C2D-x86_64-Intel-R-_Core-TM-2_CPU_6400_@_2.13GHz-with-gentoo-2.1 Timestamp of tree: Mon, 10 Sep 2012 16:15:01 +0000 app-shells/bash: 4.2_p37 dev-java/java-config: 2.1.12 dev-lang/python: 2.7.3-r2, 3.2.3 dev-util/cmake: 2.8.8-r3 dev-util/pkgconfig: 0.27.1 sys-apps/baselayout: 2.1-r1 sys-apps/openrc: 0.10.5 sys-apps/sandbox: 2.6 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.9.6-r3, 1.11.6 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.5.4 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r3 sys-kernel/linux-headers: 3.4-r2 (virtual/os-headers) sys-libs/glibc: 2.15-r2 Repositories: gentoo local_overlay ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="*" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=native -fomit-frame-pointer -fno-ident -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -march=native -fomit-frame-pointer -fno-ident -pipe" DISTDIR="/var/cache/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps y --quiet-build n" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles metadata-transfer news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="de_DE.UTF-8" LC_ALL="de_DE.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="de" MAKEOPTS="-j3" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="-4 --timeout=500" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/overlays" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aac acl acpi alsa amd64 audiofile bash-completion berkdb bluetooth branding bzip2 cairo caps cdda cdr cli consolekit cracklib crypt cups curl cxx dbus dri dts dvb dvd dvdr encode esd exif expat fam ffmpeg flac fortran gdbm gif glut gnutls gpm gtk howl iconv icq idn introspection ipv6 jpeg lcms libnotify libsexy lirc mad mmx mng modules mp3 mpeg mudflap ncurses nls nptl nvidia ogg openal opengl openmp openssl pam pcre pdf png pppd quicktime readline samba sdl session spell sse sse2 sse3 ssl ssse3 startup-notification svg tcpd theora threads tiff truetype udev unicode usb v4l v4l2 vaapi vcd vdpau vorbis vpx x264 xattr xine xinerama xml xml2 xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias proxy proxy_http" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" GRUB_PLATFORMS="pc multiboot coreboot" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de" LIRC_DEVICES="devinput" PHP_TARGETS="php5-4" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nvidia virtualbox" XFCE_PLUGINS="trash menu logout clock" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON
Created attachment 323440 [details] example output example output that shows the difference between eix-diff and 'emerge -uvpDN world' and that alsa-utils-1.0.26 is missing in eix
eix is just a cache, if the cache is outdated there will be outdated results shown.
But the cache should be up to date because eix-update was/is called automatically at the end of eix-sync (http://git.berlios.de/cgi-bin/gitweb.cgi?p=eix;a=blob;f=src/eix-sync.in;hb=HEAD#l498)
eix-sync (and eix-diff) only shows the packages which changed _since the last eix-sync_. So e.g. you probably have seen the alsa upgrade at some earlier eix-sync but at that time ignored it. At the next eix-sync, it is not shown again, no matter whether you updated alsa or not (unless there was yet another alsa upgrade in the tree). What you expected to see is perhaps the output of eix -uc (which does not care what happened at an earlier eix-sync). In case that you really suspect that eix-sync (i.e. eix-diff) does not show all packages, verify it manually as follows: Call eix [name of the missing package] and compare it with EIX_CACHEFILE=/var/cache/eix/previous.eix eix [name of the missing package] If there really is a difference in the stability of an upgrade version but the package is not shown by eix-diff please post this occurrence (and just to be sure safe the files /var/cache/eix/portage.eix and /var/cache/eix/previous.eix)
I have an issue that looks incredibly similar to this one. Starting roughly (don't remember exactly) six weeks ago, using "eix-sync" has not been performing a metadata cache update (like emerge --metadata) anymore. Since I'm using the sqlite cache implementation, eix-update + eix-diff obviously cannot show me any updates. Only after I manually perform "emerge --metadata; eix-update; eix-diff", those updates show up. My FEATURES still include "metadata-transfer". Is this related, and what can I do to help make this go back to the way it was? Thanks for your attention.
(In reply to comment #5) > Starting roughly (don't remember exactly) six weeks ago, using "eix-sync" > has not been performing a metadata cache update (like emerge --metadata) > anymore. It is no longer default. You need eix-sync -M. Use echo -M >>/etc/eix-sync.conf to make it default.
Created attachment 323812 [details] example of missing package version (In reply to comment #4) > eix-sync (and eix-diff) only shows the packages which > changed _since the last eix-sync_. > > So e.g. you probably have seen the alsa upgrade at some earlier eix-sync > but at that time ignored it. At the next eix-sync, it is not shown again, > no matter whether you updated alsa or not (unless there was yet > another alsa upgrade in the tree). > > What you expected to see is perhaps the output of eix -uc > (which does not care what happened at an earlier eix-sync). > > In case that you really suspect that eix-sync (i.e. eix-diff) does not > show all packages, verify it manually as follows: Call > eix [name of the missing package] > and compare it with > EIX_CACHEFILE=/var/cache/eix/previous.eix eix [name of the missing package] > If there really is a difference in the stability of an upgrade version > but the package is not shown by > eix-diff > please post this occurrence (and just to be sure safe the files > /var/cache/eix/portage.eix and /var/cache/eix/previous.eix) here we go ... sync before 9/10/2012, sync after 9/14/2012 sephiroth-pc eix # eix app-emulation/virtualbox-bin [I] app-emulation/virtualbox-bin Available versions: 4.1.12^m (~)4.1.16^m 4.1.18^m (~)4.1.20^m (~)4.1.22^m {{+additions +chm debug headless python rdesktop-vrdp sdk vboxwebsrv}} Installed versions: 4.1.22^m(21:15:15 10.09.2012)(additions chm -debug -headless -python -rdesktop-vrdp -sdk -vboxwebsrv) Homepage: http://www.virtualbox.org/ Description: Family of powerful x86 virtualization products for enterprise as well as home use sephiroth-pc eix # EIX_CACHEFILE=/var/cache/eix/previous.eix eix app-emulation/virtualbox-bin [I] app-emulation/virtualbox-bin Available versions: 4.1.12^m (~)4.1.16^m 4.1.18^m (~)4.1.20^m (~)4.1.22^m {{+additions +chm debug headless python rdesktop-vrdp sdk vboxwebsrv}} Installed versions: 4.1.22^m(21:15:15 10.09.2012)(additions chm -debug -headless -python -rdesktop-vrdp -sdk -vboxwebsrv) Homepage: http://www.virtualbox.org/ Description: Family of powerful x86 virtualization products for enterprise as well as home use sephiroth-pc eix # emerge -s @app-emulation/virtualbox-bin Searching... [ Results for search key : app-emulation/virtualbox-bin ] [ Applications found : 1 ] * app-emulation/virtualbox-bin Latest version available: 4.2.0 Latest version installed: 4.1.22 Size of files: 89,034 kB Homepage: http://www.virtualbox.org/ Description: Family of powerful x86 virtualization products for enterprise as well as home use License: GPL-2 PUEL sephiroth-pc eix #
eix cache before sync -> http://ul.to/j7jzz6nh eix cache after sync -> http://ul.to/rttwrp88 (size of allowed attachment is to low)
@Ronny Perinke: For you holds the same as for Hans: With PORTDIR_CACHE_METHOD=sqlite, you must force emerge --metadata before updating the eix database, i.e. you have to put -M into /etc/eix-sync.conf or otherwise your eix database is lagging one sync behind (or even more). I think I will make this option the default if PORTDIR_CACHE_METHOD=sqlite is used.
(In reply to comment #9) > I think I will make this option the default if > PORTDIR_CACHE_METHOD=sqlite > is used. This is now the case in the just released eix-0.27.0
+*eix-0.27.0 (17 Sep 2012) + + 17 Sep 2012; Jeremy Olexa <darkside@gentoo.org> +eix-0.27.0.ebuild: + Version bump from upstream, fixes bug 434616 as well
(In reply to comment #9) > @Ronny Perinke: > > For you holds the same as for Hans: > > With PORTDIR_CACHE_METHOD=sqlite, you must force emerge --metadata before > updating the eix database, i.e. you have to put -M into /etc/eix-sync.conf > or otherwise your eix database is lagging one sync behind (or even more). > > I think I will make this option the default if > PORTDIR_CACHE_METHOD=sqlite > is used. It's working again with the "-M" option. :)