Ticket #586 (closed defect: fixed)

Opened 6 years ago

Last modified 6 years ago

adjutrix -k shows ~arch as arch

Reported by: rbu Owned by: dleverton
Priority: Sometime Milestone:
Component: clients/adjutrix Version: 0.26.1
Keywords: Cc:
Blocked By: Blocking:
Distribution: Gentoo

Description

From today's sync of Portage, I get the following behaviour: imlib-1.4.0-r1 is ~arch, but adjutrix -k will display "arch" for all arches:

Keywords for media-libs/imlib2:

| s | | p | | a x | | r 8 | | c 6 | u | a a p s - - | n | l m h i m m p s p f f | u s | p d a p a 6 i p c 3 a b x b | s l | h 6 r p 6 8 p p 6 9 s r s 8 s | e o | a 4 m a 4 k s c 4 0 h c d 6 d | d t


1.4.0 | + + + + + + + + + + + ~ | * 0 1.4.0-r1 | + + + + + + + + + + + ~ | 1.4.1.000 | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ | * 1.4.1.000-r1 | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |

$ grep KEYW imlib2* imlib2-1.4.0.ebuild:KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd" imlib2-1.4.0-r1.ebuild:KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd" imlib2-1.4.1.000.ebuild:KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"

$ cvs log imlib2-1.4.0-r1.ebuild

RCS file: /var/cvsroot/gentoo-x86/media-libs/imlib2/imlib2-1.4.0-r1.ebuild,v Working file: imlib2-1.4.0-r1.ebuild head: 1.1 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 1; selected revisions: 1 description:


revision 1.1 date: 2008-05-31 07:47:12 +0200; author: vapier; state: Exp; commitid: 48964840e65f4567; Add fixes from upstream for CVE-2008-2426 #223965. (Portage version: 2.2_pre5.spank.spunk)

$ adjutrix -V adjutrix, part of paludis 0.26.1

Change History

comment:1 Changed 6 years ago by rbu

I should have used Code formatting for the output, redoing for adjutrix -k

Keywords for media-libs/imlib2:

             |                         s     |
             |                         p     |
             |                         a   x |
             |                         r   8 |
             |                         c   6 | u
             | a a             p     s -   - | n
             | l m   h i m m   p s   p f   f | u s
             | p d a p a 6 i p c 3   a b x b | s l
             | h 6 r p 6 8 p p 6 9 s r s 8 s | e o
             | a 4 m a 4 k s c 4 0 h c d 6 d | d t
-------------+-------------------------------+----
1.4.0        | + + + + +   + + +   + +   + ~ | * 0
1.4.0-r1     | + + + + +   + + +   + +   + ~ |
1.4.1.000    | ~ ~ ~ ~ ~   ~ ~ ~   ~ ~   ~ ~ | *
1.4.1.000-r1 | ~ ~ ~ ~ ~   ~ ~ ~   ~ ~   ~ ~ |

comment:2 Changed 6 years ago by ciaranm

What does paludis -qM think?

comment:3 Changed 6 years ago by rbu

I got the adjutrix results on a CVS checkout that was not actually the tree I was using (for portage). The result does not occur outside of the actual tree: Running "adjutrix -k" in /usr/portage/media-libs/imlib2 works as expected. Running it inside my CVS checkout works weirdly. Diff tells me the directories are completely the same (except for CVS subdirs). So I understand the "paludis" output will not bee too helpful.

rbu@peanut ~/devel/gentoo/gentoo-x86/media-libs/imlib2 $ paludis -qM imlib2
paludis@1212278426: [WARNING portage_environment.dodgy] Use of Portage configuration files will lead to sub-optimal performance and loss of functionality. Full support for Portage configuration formats is not guaranteed; issues should be reported via trac.
* media-libs/imlib2
    gentoo:                  1.4.0 (1.4.0-r1)K (1.4.1.000)K (1.4.1.000-r1)K {:0}
    installed:               1.4.0* {:0}
    DESCRIPTION:             Version 2 of an advanced replacement library for libraries like libXpm
    HOMEPAGE:                http://www.enlightenment.org/Libraries/Imlib2/
    IUSE:                    (X) (bzip2) (-doc) (gif) (jpeg) (-mmx) (mp3) (nls) (png) (tiff) (zlib)
    LICENSE:                 BSD
    INSTALLED_TIME:          Sat Nov 24 08:05:03 2007
    repository:              gentoo
    DEPEND:                  =media-libs/freetype-2* bzip2? ( app-arch/bzip2 ) zlib? ( sys-libs/zlib ) gif? ( >=media-libs/giflib-4.1.0 ) png? ( >=media-libs/libpng-1.2.1 ) jpeg? ( media-libs/jpeg ) tiff? ( >=media-libs/tiff-3.5.5 ) X? ( x11-libs/libXext x11-proto/xextproto ) mp3? ( media-libs/libid3tag ) doc? ( app-doc/doxygen )
    RDEPEND:                 =media-libs/freetype-2* bzip2? ( app-arch/bzip2 ) zlib? ( sys-libs/zlib ) gif? ( >=media-libs/giflib-4.1.0 ) png? ( >=media-libs/libpng-1.2.1 ) jpeg? ( media-libs/jpeg ) tiff? ( >=media-libs/tiff-3.5.5 ) X? ( x11-libs/libXext x11-proto/xextproto ) mp3? ( media-libs/libid3tag ) nls? ( sys-devel/gettext )
    PDEPEND:
    SRC_URI:                 http://enlightenment.freedesktop.org/files/imlib2-1.4.0.tar.gz mirror://sourceforge/enlightenment/imlib2-1.4.0.tar.gz
    VDBDIR:                  /var/db/pkg/media-libs/imlib2-1.4.0
    USE:                     (3dnow) (3dnowex) (X) (X509) (a52) (aac) (aalib) (acl) (acpi) (alsa) (alsa_cards_ali5451) (alsa_cards_als4000) (alsa_cards_atiixp) (alsa_cards_atiixp-modem) (alsa_cards_bt87x) (alsa_cards_ca0106) (alsa_cards_cmipci) (alsa_cards_emu10k1x) (alsa_cards_ens1370) (alsa_cards_ens1371) (alsa_cards_es1938) (alsa_cards_es1968) (alsa_cards_fm801) (alsa_cards_hda-intel) (alsa_cards_intel8x0) (alsa_cards_intel8x0m) (alsa_cards_maestro3) (alsa_cards_trident) (alsa_cards_usb-audio) (alsa_cards_via82xx) (alsa_cards_via82xx-modem) (alsa_cards_ymfpci) (alsa_pcm_plugins_adpcm) (alsa_pcm_plugins_alaw) (alsa_pcm_plugins_asym) (alsa_pcm_plugins_copy) (alsa_pcm_plugins_dmix) (alsa_pcm_plugins_dshare) (alsa_pcm_plugins_dsnoop) (alsa_pcm_plugins_empty) (alsa_pcm_plugins_extplug) (alsa_pcm_plugins_file) (alsa_pcm_plugins_hooks) (alsa_pcm_plugins_iec958) (alsa_pcm_plugins_ioplug) (alsa_pcm_plugins_ladspa) (alsa_pcm_plugins_lfloat) (alsa_pcm_plugins_linear) (alsa_pcm_plugins_meter) (alsa_pcm_plugins_mulaw) (alsa_pcm_plugins_multi) (alsa_pcm_plugins_null) (alsa_pcm_plugins_plug) (alsa_pcm_plugins_rate) (alsa_pcm_plugins_route) (alsa_pcm_plugins_share) (alsa_pcm_plugins_shm) (alsa_pcm_plugins_softvol) (amd64) (apache2) (arts) (asf) (audiofile) (avahi) (bash-completion) (berkdb) (bitmap-fonts) (bl) (bluetooth) (bzip2) (bzlib) (cairo) (cdr) (cli) (cracklib) (crypt) (cups) (curl) (dbus) (dga) (divx) (dri) (dts) (dv) (dvd) (dvdr) (dvdread) (eds) (elibc_glibc) (emboss) (encode) (esd) (evo) (exif) (fam) (ffmpeg) (firefox) (flac) (foomaticdb) (fortran) (ftp) (gcj) (gdbm) (ggi) (gif) (gimpprint) (glibc-omitfp) (glitz) (gmedia) (gnome) (gpm) (gstreamer) (gtk) (gtk2) (hal) (http) (iconv) (idn) (ieee1394) (imagemagick) (imlib) (input_devices_evdev) (input_devices_keyboard) (input_devices_mouse) (input_devices_wacom) (ipv6) (isdnlog) (jack) (java) (jpeg) (kde) (kerberos) (kernel_linux) (kqemu) (lcd_devices_luise) (lcd_devices_ncurses) (lcd_devices_picolcd) (ldap) (libcaca) (libnotify) (linguas_de) (linguas_en) (live) (logitech-mouse) (lzo) (mad) (midi) (mikmod) (mmx2) (mmxext) (mozilla) (mp3) (mpeg) (mudflap) (musepack) (nas) (ncurses) (network) (networkmanager) (nls) (nptl) (nptlonly) (nsplugin) (nvidia) (ogg) (openal) (opengl) (openmp) (oss) (pam) (pcre) (pdf) (perl) (php) (pic) (png) (ppds) (pppd) (pulseaudio) (python) (qemu) (qt3) (qt3support) (qt4) (quicktime) (readline) (realmedia) (reflection) (rss) (samba) (sasl) (sdl) (session) (slang) (sndfile) (speex) (spell) (spl) (sse) (sse2) (ssl) (subversion) (svg) (tcltk) (tcpd) (tetex) (theora) (threads) (tiff) (truetype) (truetype-fonts) (type1) (type1-fonts) (unicode) (urandom) (usb) (userland_GNU) (v4l) (v4l2) (vcd) (video_cards_i810) (video_cards_vesa) (vorbis) (wma) (wmf) (wmp) (x264) (xanim) (xen) (xine) (xml) (xorg) (xspf) (xv) (xvid) (xvmc) (zlib)
    INHERITED:               enlightenment eutils libtool multilib portability toolchain-funcs
    CBUILD:                  x86_64-pc-linux-gnu
    CFLAGS:                  -march=nocona -mtune=nocona -O2 -pipe -mmmx -msse -msse2 -msse3 -mfpmath=sse -fweb -frename-registers -fomit-frame-pointer -fno-ident
    CHOST:                   x86_64-pc-linux-gnu
    CXXFLAGS:                -march=nocona -mtune=nocona -O2 -pipe -mmmx -msse -msse2 -msse3 -mfpmath=sse -fweb -frename-registers -fomit-frame-pointer -fno-ident
    LDFLAGS:                 -Wl,--as-needed -Wl,-O1

Key to mask reasons:

* K: keywords

comment:4 Changed 6 years ago by rbu

s/The result does not occur outside of the actual tree/The result does not occur inside of the actual tree/

comment:5 Changed 6 years ago by ciaranm

Try adding in some 1>&2 output in builtin_metadata.bash, see what keys are being passed from bash to adjutrix.

comment:6 Changed 6 years ago by ciaranm

  • Status changed from new to closed
  • Resolution set to worksforme

I can't reproduce this. If anyone can, please indicate:

  • whether it's for all packages, just one package or what
  • what builtin_metadata.bash is showing for the keywords
  • what keywords_graph.cc is showing for the keywords

comment:7 Changed 6 years ago by rbu

  • Status changed from closed to reopened
  • Resolution worksforme deleted

I hope it's appropriate to reopen. I added a

        echo "${key}=\""${k}"\"" 1>&2

to /usr/libexec/paludis/0/builtin_metadata.bash, and the output is as follows (cut):

imlib2-1.4.0-r1> DEPEND="=media-libs/freetype-2* bzip2? ( app-arch/bzip2 ) zlib? ( sys-libs/zlib ) gif? ( >=media-libs/giflib-4.1.0 ) png? ( >=media-libs/libpng-1.2.1 ) jpeg? ( media-libs/jpeg ) tiff? ( >=media-libs/tiff-3.5.5 ) X? ( x11-libs/libXext x11-proto/xextproto ) mp3? ( media-libs/libid3tag ) doc? ( app-doc/doxygen ) "
imlib2-1.4.0-r1> RDEPEND="=media-libs/freetype-2* bzip2? ( app-arch/bzip2 ) zlib? ( sys-libs/zlib ) gif? ( >=media-libs/giflib-4.1.0 ) png? ( >=media-libs/libpng-1.2.1 ) jpeg? ( media-libs/jpeg ) tiff? ( >=media-libs/tiff-3.5.5 ) X? ( x11-libs/libXext x11-proto/xextproto ) mp3? ( media-libs/libid3tag ) nls? ( sys-devel/gettext ) "
imlib2-1.4.0-r1> PDEPEND=" "
imlib2-1.4.0-r1> IUSE="X bzip2 gif jpeg mmx mp3 png tiff zlib nls doc "
imlib2-1.4.0-r1> SRC_URI="http://enlightenment.freedesktop.org/files/imlib2-1.4.0.tar.gz mirror://sourceforge/enlightenment/imlib2-1.4.0.tar.gz"
imlib2-1.4.0-r1> RESTRICT=""
imlib2-1.4.0-r1> LICENSE="BSD"
imlib2-1.4.0-r1> KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd "
imlib2-1.4.0-r1> INHERITED=" toolchain-funcs multilib portability eutils libtool enlightenment"
imlib2-1.4.0-r1> PROVIDE=""
imlib2-1.4.0-r1> HOMEPAGE="http://www.enlightenment.org/"
imlib2-1.4.0-r1> DESCRIPTION="Version 2 of an advanced replacement library for libraries like libXpm"
imlib2-1.4.0-r1> DEPENDENCIES=""
imlib2-1.4.0-r1> E_IUSE=" nls doc "
imlib2-1.4.0-r1> E_DEPEND=" doc? ( app-doc/doxygen ) "
imlib2-1.4.0-r1> E_RDEPEND=" nls? ( sys-devel/gettext ) "
imlib2-1.4.0-r1> E_PDEPEND=" "
imlib2-1.4.0-r1> E_KEYWORDS=" alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd "
imlib2-1.4.0-r1> PLATFORMS=""
imlib2-1.4.0-r1> E_PLATFORMS=""
imlib2-1.4.0-r1> MYOPTIONS=""
imlib2-1.4.0-r1> E_MYOPTIONS=""
imlib2-1.4.0-r1> E_DEPENDENCIES=""
imlib2-1.4.0-r1> BINARY_KEYWORDS=""
imlib2-1.4.0-r1> BINARY_URI=""
imlib2-1.4.0-r1> GENERATED_USING=""
imlib2-1.4.0-r1> GENERATED_TIME=""
imlib2-1.4.0-r1> BINARY_PLATFORMS=""
imlib2-1.4.0-r1> SLOT="0"
imlib2-1.4.0-r1> EAPI="0"
imlib2-1.4.0-r1> OPTIONS=""
imlib2-1.4.0-r1> USE=""
1.4.0-r1     | + + + + +   + + +   + +   + ~ |

Again, in the same directory: $ grep KEYW *1.4.0-r1* KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"

Please note this is in a tree checkout, not the actual tree. The portage provided tree has stable keywords, but even if I revert those, the situation stays. /usr/portage/media-libs/imlib2 $ grep KEYW *1.4.0-r1* KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd"

No, it does not happen for all packages (for instance, it does not happen for other versions in the same directory).

If I add the following to ebuild_f_metadata()

    echo "${KEYWORDS}" 1>&2

I get this:

Keywords for media-libs/imlib2:

imlib2-1.4.1.000-r1> ~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd       ~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd
imlib2-1.4.1.000> ~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd       ~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd
imlib2-1.4.0-r1> ~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd       alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd
imlib2-1.4.0> alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd       alpha amd64 arm hppa ia64 mips ppc ppc64 sh sparc x86 ~x86-fbsd
             |                         s     |
             |                         p     |
             |                         a   x |
             |                         r   8 |
             |                         c   6 | u
             | a a             p     s -   - | n
             | l m   h i m m   p s   p f   f | u s
             | p d a p a 6 i p c 3   a b x b | s l
             | h 6 r p 6 8 p p 6 9 s r s 8 s | e o
             | a 4 m a 4 k s c 4 0 h c d 6 d | d t
-------------+-------------------------------+----
1.4.0        | + + + + +   + + +   + +   + ~ | * 0
1.4.0-r1     | + + + + +   + + +   + +   + ~ |
1.4.1.000    | ~ ~ ~ ~ ~   ~ ~ ~   ~ ~   ~ ~ | *
1.4.1.000-r1 | ~ ~ ~ ~ ~   ~ ~ ~   ~ ~   ~ ~ |

If this is unexpected, please let me know what else to change to help debug.

comment:8 Changed 6 years ago by ciaranm

That's weird. The bash side is getting two sets of KEYWORDS. Are you absolutely sure there's no eclass weirdness, or ebuild KEYWORDS manipulation that your grep is missing?

comment:9 Changed 6 years ago by ciaranm

Such as from that horrible 'enlightenment' eclass, for example?

comment:10 Changed 6 years ago by rbu

  • Status changed from reopened to closed
  • Resolution set to invalid

Yes, it's caused by the enlightenment eclass, which resets KEYWORDS. Paludis merges the ebuild's ~arch and eclasses arch. Portage reacts with overwriting it, keeping only ~arch. Thanks, I guess it's not primarily a bug in Paludis then.

comment:11 Changed 6 years ago by dleverton

  • Status changed from closed to reopened
  • Resolution invalid deleted

*mutters something about ciaranm and his silly hacks*

Yes, the eclass is crazy, but Paludis shouldn't be doing that.

comment:12 Changed 6 years ago by dleverton

  • Owner set to dleverton
  • Status changed from reopened to accepted

comment:13 Changed 6 years ago by dleverton

  • Status changed from accepted to closed
  • Resolution set to fixed

8d653af

Note: See TracTickets for help on using tickets.