Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 271985

Summary: Only slotmove supports version handlers, move should also.
Product: Gentoo Linux Reporter: Thomas Cort <linuxgeek>
Component: EclassesAssignee: PMS/EAPI <pms>
Status: RESOLVED NEEDINFO    
Severity: enhancement CC: ciaran.mccreesh, cycoone, gentoo, jmbsvicetto, p, ulm
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Thomas Cort 2009-05-31 14:30:51 UTC
I get an "InvalidPackageName: >=kde-base/konq-plugins-4" error when "Performing Global Updates: /usr/portage/profiles/updates/2Q-2009"

Reproducible: Always

Steps to Reproduce:
1. emerge --sync


Actual Results:  
...

Performing Global Updates: /usr/portage/profiles/updates/2Q-2009
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  #='/var/db update'  @='/var/db move'
  s='/var/db SLOT move'  %='binary move'  S='binary SLOT move'
  p='update /etc/portage/package.*'
.........................
ERROR: Malformed update entry 'move >=kde-base/konq-plugins-4 kde-misc/konq-plugins'
Traceback (most recent call last):
  File "/usr/bin/emerge", line 40, in <module>
    retval = _emerge.emerge_main()
  File "//usr/lib64/portage/pym/_emerge/__init__.py", line 15118, in emerge_main
    return action_sync(settings, trees, mtimedb, myopts, myaction)
  File "//usr/lib64/portage/pym/_emerge/__init__.py", line 12861, in action_sync
    if portage._global_updates(trees, mtimedb["updates"]):
  File "//usr/lib64/portage/pym/portage/__init__.py", line 7914, in _global_updates
    moves = vardb.move_ent(update_cmd)
  File "//usr/lib64/portage/pym/portage/dbapi/vartree.py", line 165, in move_ent
    raise InvalidPackageName(cp)
InvalidPackageName: >=kde-base/konq-plugins-4


Expected Results:  
No error

Now emerge --sync doesn't work anymore....

ainsworth ~ # emerge --sync


Performing Global Updates: /usr/portage/profiles/updates/2Q-2009
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  #='/var/db update'  @='/var/db move'
  s='/var/db SLOT move'  %='binary move'  S='binary SLOT move'
  p='update /etc/portage/package.*'
.........................
ERROR: Malformed update entry 'move >=kde-base/konq-plugins-4 kde-misc/konq-plugins'
Traceback (most recent call last):
  File "/usr/bin/emerge", line 40, in <module>
    retval = _emerge.emerge_main()
  File "//usr/lib64/portage/pym/_emerge/__init__.py", line 14830, in emerge_main
    if portage._global_updates(trees, mtimedb["updates"]):
  File "//usr/lib64/portage/pym/portage/__init__.py", line 7914, in _global_updates
    moves = vardb.move_ent(update_cmd)
  File "//usr/lib64/portage/pym/portage/dbapi/vartree.py", line 165, in move_ent
    raise InvalidPackageName(cp)
InvalidPackageName: >=kde-base/konq-plugins-4


and `emerge --info` fails too :)

ainsworth ~ # emerge --info


Performing Global Updates: /usr/portage/profiles/updates/2Q-2009
(Could take a couple of minutes if you have a lot of binary packages.)
  .='update pass'  *='binary update'  #='/var/db update'  @='/var/db move'
  s='/var/db SLOT move'  %='binary move'  S='binary SLOT move'
  p='update /etc/portage/package.*'
.........................
ERROR: Malformed update entry 'move >=kde-base/konq-plugins-4 kde-misc/konq-plugins'
Traceback (most recent call last):
  File "/usr/bin/emerge", line 40, in <module>
    retval = _emerge.emerge_main()
  File "//usr/lib64/portage/pym/_emerge/__init__.py", line 14830, in emerge_main
    if portage._global_updates(trees, mtimedb["updates"]):
  File "//usr/lib64/portage/pym/portage/__init__.py", line 7914, in _global_updates
    moves = vardb.move_ent(update_cmd)
  File "//usr/lib64/portage/pym/portage/dbapi/vartree.py", line 165, in move_ent
    raise InvalidPackageName(cp)
InvalidPackageName: >=kde-base/konq-plugins-4
ainsworth ~ #
Comment 1 Federico Fissore 2009-05-31 14:39:02 UTC
mee too
Comment 2 Thomas Cort 2009-05-31 14:45:59 UTC
It's fixed in CVS. Wait an hour or so before doing a sync again.

To fix your system, replace /usr/portage/profiles/updates/2Q-2009 with the contents of the file in CVS which is found here:

http://sources.gentoo.org/viewcvs.py/*checkout*/gentoo-x86/profiles/updates/2Q-2009
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2009-05-31 15:00:35 UTC
Reopening to reassign to dev-portage.
Comment 4 Josh 2009-05-31 15:14:24 UTC
me2
Comment 5 Theo Chatzimichos (RETIRED) archtester gentoo-dev Security 2009-05-31 15:23:58 UTC
@Josh and everyone else who is using the same mirrors:
when a package changes category, we declare it in /usr/portage/profiles/updates/ file, with an entry saying move app/foo misc/foo. In this case we did a partial move of >=kde-base/konq-plugins-4 to kde-misc/konq-plugins. We wanted to declare it to portage in the above files, but then we realized that portage doesn't support >= in move, only in slotmove. We reverted the commit in about 5 minutes, i guess we are very unlucky that this hit some mirrors. As Thomas Cort said, to fix, either resync in a couple of hours, or fix it manually by editing /usr/portage/profiles/updates/2Q-2009 file and removing the move >=kde-base/konq-plugins-4 kde-misc/konq-plugins line. This bug is now a portage bug to support version handlers for move. Thanks and accept my apologies for the mess :)
Comment 6 Josh 2009-05-31 19:04:31 UTC
Thanks for clearing that up. :)
Comment 7 Theo Chatzimichos (RETIRED) archtester gentoo-dev Security 2009-05-31 19:11:02 UTC
*** Bug 272004 has been marked as a duplicate of this bug. ***
Comment 8 Ingo Krabbe 2009-06-01 09:23:59 UTC
a good bug report is nearly as good as not making the error. Good Job.
Comment 9 Theo Chatzimichos (RETIRED) archtester gentoo-dev Security 2009-06-01 12:59:51 UTC
*** Bug 272080 has been marked as a duplicate of this bug. ***
Comment 10 Ulrich Müller gentoo-dev 2009-06-06 06:25:39 UTC
Can we change the syntax of the updates files? They are not EAPI specific.

Adding dev-portage to CC: Portage should handle malformed lines more gracefully, e.g. output an error message and ignore the line. It _shouldn't_ go haywire and block any further actions.
Comment 11 solar (RETIRED) gentoo-dev 2009-06-06 10:34:10 UTC
When filing bugs that are really about portage we should start with the dev-portage@ alias vs going directly to PMS. Prove the idea with portage and other  PM's will pick them up in due time.
Comment 12 Ciaran McCreesh 2009-10-22 18:19:07 UTC
You mean "start using it in the tree, breaking everyone who isn't using Portage, and then rush to try to get it documented and standardised later, then when doing so realise the way it's been implemented isn't perfect but that we can't come up with a better solution now that it's already being used"?
Comment 13 Ulrich Müller gentoo-dev 2017-06-07 14:37:02 UTC
No progress since several years.

Reopen only if you have a complete proposal how to achieve this, including a transition plan.