Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 378405 - sys-apps/portage-2.1.10.10: Emerge tries to downgrade a local overlay package to a package with lesser version in portage
Summary: sys-apps/portage-2.1.10.10: Emerge tries to downgrade a local overlay package...
Status: RESOLVED NEEDINFO
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-08 21:53 UTC by godmachine (Lance Poore)
Modified: 2011-08-09 00:20 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description godmachine (Lance Poore) 2011-08-08 21:53:48 UTC
I tried to use a custom ebuild for net-news/yarssr to include a patch for the URL opener, which wasn't included in the latest release. My local port overlay was in /usr/local/portage and the appropriate overlay line was in Make.conf, however upon emerging the local version of yarssr and later doing emerge -avuDN world, it tries to downgrade the package to the portage version.  It done this with both the original versioning "yarssr-0.2.2-r1" in the local overlay, and when i bumped the version to -r2 as well.. Portage would give me this output: 
[ebuild   R    ] net-news/yarssr-0.2.2-r1  0 kB [2=>0]  (with the r1 in local) 

[ebuild     UD ] net-news/yarssr-0.2.2-r1 [0.2.2-r2] 0 kB [2=>0] (after bumping version to r2 in local overlay)

** I resolved the issue by entirely unmerging yarssr, and then emerging it again. However I find it to be an issue with portage when it tries to downgrade to a version that is in portage with a lesser version number..  Also i had appropriately ran ebuild yarssr-0.2.2-r2.ebuild digest  on the package each time, before the problem with emerge -avuDN world spawned.  



Reproducible: Always

Steps to Reproduce:
1.Emerge yarssr from portage
2.Define a custom ebuild in local portage overlay
3.Upgrade to local overlay version and then emerge -avuDN world
Actual Results:  
Portage tries to downgrade to the version from portage

Expected Results:  
Keep the local overlay with precedence over package(s) from portage
Comment 1 godmachine (Lance Poore) 2011-08-08 22:03:49 UTC
 # emerge --info
Portage 2.1.10.10 (default/linux/amd64/10.0/desktop, gcc-4.5.3, glibc-2.13-r4, 3.0.1 x86_64)
=================================================================
System uname: Linux-3.0.1-x86_64-AMD_Phenom-tm-_II_X6_1100T_Processor-with-gentoo-2.0.3
Timestamp of tree: Mon, 08 Aug 2011 19:45:01 +0000
app-shells/bash:          4.2_p10
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.4.6, 2.7.2-r2, 3.2-r2
dev-util/cmake:           2.8.5-r2
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.0.3
sys-apps/openrc:          0.8.3-r1
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.1-r1
sys-devel/binutils:       2.21.1
sys-devel/gcc:            4.5.3
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82-r1
sys-kernel/linux-headers: 2.6.38 (virtual/os-headers)
sys-libs/glibc:           2.13-r4
Repositories: gentoo sunrise floppym my_repo
ACCEPT_KEYWORDS="amd64 ~amd64 ~x86"
ACCEPT_LICENSE="* -@EULA PUEL"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -fno-builtin -msse4a -O3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/themes/oxygen-gtk/gtk-2.0 /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.2/ext-active/ /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.2/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.2/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -fno-builtin -msse4a -O3"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="ftp://chi-10g-1-mirror.fastsoft.net/pub/linux/gentoo/gentoo-distfiles/ ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://gentoo.mirrors.tds.net/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j7"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/sunrise /var/lib/layman/floppym /usr/local/portage"
SYNC="rsync://rsync11.us.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 ao bash-completion berkdb blas bluetooth branding bzip2 cairo cdda cddb cdparanoia cdr cli consolekit cracklib crypt cups cxx dbus dri dts dv dvd dvdr emboss encode exif fam fbcon ffmpeg firefox flac fortran gdbm gdu gif glut gnome gpm gtk iconv ipv6 jpeg lame lcms ldap libnotify lm_sensors mad mmx mng modules mp3 mp4 mpeg mplayer mudflap multilib mysql mysqli ncurses nls nptl nptlonly nsplugin ogg opengl openmp pam pango pcre pdf perl php png policykit ppds pppd pulseaudio python qt3support qt4 readline sasl sdl seamonkey session smartcard spell sqlite sqlite3 sse sse2 ssl startup-notification svg symlink sysfs syslog tcpd tiff truetype udev unicode usb v4l v4l2 vcd vorbis wavpack wifi x264 xcb xcomposite xml xorg xulrunner 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" CALLIGRA_FEATURES="braindump flow karbon kexi kpresenter krita tables words" CAMERAS="ptp2" 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" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fglrx" 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 2 godmachine (Lance Poore) 2011-08-08 22:16:53 UTC
I forgot to mention this in the original post:

emerge -avuDN world yields: 
[ebuild     UD#] net-news/yarssr-0.2.2-r1 [0.2.2-r2] 0 kB [2=>0]

This might help to see exactly the point in the problem at hand..
Comment 3 Zac Medico gentoo-dev 2011-08-08 22:43:21 UTC
It seems like the version from your overlay is masked for some reason. Please try to explicitly emerge the version that you want, to verify that it is available and unmasked:

   emerge -pv =net-news/yarssr-0.2.2-r2

As a side note, you might want to use bashrc to patch it instead of an overlay. For example, you can do something like this in /etc/portage/env/net-news/yarssr-0.2.2:

post_src_unpack() {
  elog "bashrc is applying yarssr-0.2.2.patch in post_src_unpack"
  patch -p1 < /etc/portage/env/net-news/yarssr-0.2.2.patch || die
}

See `man portage` for more info about /etc/portage/env/ bashrc support.
Comment 4 godmachine (Lance Poore) 2011-08-08 23:19:33 UTC
(In reply to comment #3)
> It seems like the version from your overlay is masked for some reason. Please
> try to explicitly emerge the version that you want, to verify that it is
> available and unmasked:
> 
>    emerge -pv =net-news/yarssr-0.2.2-r2
> 
> As a side note, you might want to use bashrc to patch it instead of an overlay.
> For example, you can do something like this in
> /etc/portage/env/net-news/yarssr-0.2.2:
> 
> post_src_unpack() {
>   elog "bashrc is applying yarssr-0.2.2.patch in post_src_unpack"
>   patch -p1 < /etc/portage/env/net-news/yarssr-0.2.2.patch || die
> }
> 
> See `man portage` for more info about /etc/portage/env/ bashrc support.

I had explicitly emerged the package and it emerged fine from the overlay, just when i would try to do emerge -avuDN world it would try to downgrade to the version provided by portage,  my overlay reads fine and nothing is masked.. actually I have package.unmask specifying net-news/yarssr  and ** in the atom for package.keywords as well, i thought the same thing about it being masked, but that wasn't the problem. But regardless of what I was using the local overlay for (patching or not) the real issue is that emerge shouldn't try to downgrade a package that is in the overlay with a version from the portage tree.  This may not just be with the one instance I had with patching yarssr, it could be with other ebuild's as well, that was just a pure example.
Comment 5 Zac Medico gentoo-dev 2011-08-08 23:26:30 UTC
(In reply to comment #4)
> But regardless of what I was using the local
> overlay for (patching or not) the real issue is that emerge shouldn't try to
> downgrade a package that is in the overlay with a version from the portage
> tree.

Right. It's not supposed to do that, and I don't know why it's doing that. That's why I asked you to post the output of the following command:

   emerge -pv =net-news/yarssr-0.2.2-r2

The output might help me understand why it's behaving that way. If there are no clues in that output, then please attach a debug log created as follows:

  emerge -pvuDN --debug &> debug.log
Comment 6 godmachine (Lance Poore) 2011-08-08 23:37:17 UTC
(In reply to comment #5)
> (In reply to comment #4)
> > But regardless of what I was using the local
> > overlay for (patching or not) the real issue is that emerge shouldn't try to
> > downgrade a package that is in the overlay with a version from the portage
> > tree.
> 
> Right. It's not supposed to do that, and I don't know why it's doing that.
> That's why I asked you to post the output of the following command:
> 
>    emerge -pv =net-news/yarssr-0.2.2-r2
> 
> The output might help me understand why it's behaving that way. If there are no
> clues in that output, then please attach a debug log created as follows:
> 
>   emerge -pvuDN --debug &> debug.log

I can't do that now as I already unmerged the package and emerged it from scratch to work around the issue, but I can tell you that emerge -pv =net-news/yarssr-0.2.2-r2  showed now errors or any blocks, and I initially installed it just like that with emerge -av yarssr  without specifying the version, and it pulled in the package from the local overlay, however after doing so and upon doing an emerge -avuDN world that was when it tried to downgrade the package with the following output:  

[ebuild     UD#] net-news/yarssr-0.2.2-r1 [0.2.2-r2] 0 kB [2=>0]

That was when I created the package.unmask section for yarssr and the package.keywords as well.. Neither solved the problem. I was told to change the version back to r1 in the local overlay, and try to emerge -avuDN world again.. After doing that I got this:  

[ebuild   R    ] net-news/yarssr-0.2.2-r1  0 kB [2=>0]

At this point was when i done:
emerge -C net-news/yarssr

and then:
emerge -av net-news/yarssr

Then it successfully pulled it from the local overlay, and no longer did emerge -avuDN world try to downgrade.. 

The problem with this, I shouldn't have to unmerge a version from portage to be able to use the version from a local overlay. That isn't too practical.
Comment 7 Zac Medico gentoo-dev 2011-08-08 23:43:28 UTC
If you're able to reproduce the downgrade, then please attach a debug log and re-open the bug.
Comment 8 godmachine (Lance Poore) 2011-08-09 00:02:30 UTC
(In reply to comment #7)
> If you're able to reproduce the downgrade, then please attach a debug log and
> re-open the bug.

Thanks for marking it resolved so quickly, this is reason i tend not report most bugs..
Comment 9 godmachine (Lance Poore) 2011-08-09 00:08:03 UTC
"resolved is one thing" which it wasn't.. "need info is another" im not going to spend more time in fixing problems just to see you guys fix something. I could have unmerged the package I have now and reproduced the error logging all output if you would have made it clear that it was necessary for that info, instead this will just go on and someone else will just file a bug later on.. I'm not trying to solve the problem for people who want to just close the bug because they don't want to put any effort into the resolving the issue their self.. So have fun answering the same problem again and again, and closing one bug after the next.  this is a waste of my time to file a bug report and get it closed right in my face.
Comment 10 Zac Medico gentoo-dev 2011-08-09 00:09:32 UTC
Sorry, there's not much that we can do until you can reproduce it and attach a debug log. I don't recall anyone else reporting an issue like this, and given the complexity of the dependency resolver, it's not worth investigating without a debug log.
Comment 11 godmachine (Lance Poore) 2011-08-09 00:13:52 UTC
I provided the information that emerge spit out and the whole problem at hand.. If i had any more details to the problem and I could have obtained them, I would have tried to resolve it myself before reporting a bug.. What kind of debug log do you need? I gave you the output that was produced by emerge and the exact commands ran.. the build logs have nothing of relevance as I just looked at them, and there were no errors reported when this happened in the elog either.. So I don't see how you expect me to provide a debug log of it, unless there is some command to obtain that information that you want me to run other than emerge --info and the .log files that the build produces (which have no important info)..
Comment 12 Zac Medico gentoo-dev 2011-08-09 00:20:57 UTC
(In reply to comment #11)
> So I don't see how you expect me to provide a debug log of it,
> unless there is some command to obtain that information that you want me to run

If you can reproduce the downgrade with 'emerge -avuDN world' like you said you did in comment #2, then please attach a debug log created as follows:

  emerge -pvuDN --debug &> debug.log

I asked for a log like this in comment #5, but it seemed like you couldn't reproduce it, so I closed the bug until you could reproduce it.