Jump to content
funtoo forums
  • 0
onli

AssertionError: setcpv recursion detected

Question

I run the kit system for a while now. Was gone for the month, now when I try to upgrade I get this:

Quote

 

onli@Fallout:~$ sudo emerge --ask --update --deep --with-bdeps=y --newuse @world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Traceback (most recent call last):
  File "/usr/lib/python-exec/python2.7/emerge", line 50, in <module>
    retval = emerge_main()
  File "/usr/lib64/python2.7/site-packages/_emerge/main.py", line 1250, in emerge_main
    return run_action(emerge_config)
  File "/usr/lib64/python2.7/site-packages/_emerge/actions.py", line 3297, in run_action
    retval = action_build(emerge_config, spinner=spinner)
  File "/usr/lib64/python2.7/site-packages/_emerge/actions.py", line 339, in action_build
    settings, trees, myopts, myparams, myaction, myfiles, spinner)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 9579, in backtrack_depgraph
    myaction, myfiles, spinner)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 9616, in _backtrack_depgraph
    success, favorites = mydepgraph.select_files(myfiles)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 3791, in select_files
    return self._select_files(args)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 4134, in _select_files
    return self._resolve(myfavorites)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 4285, in _resolve
    if not self._create_graph():
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 2561, in _create_graph
    allow_unsatisfied=allow_unsatisfied):
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 3285, in _add_pkg_deps
    allow_unsatisfied):
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 3301, in _add_pkg_dep_string
    allow_unsatisfied)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 3381, in _wrapped_add_pkg_dep_string
    pkg, dep_priority, root_config, selected_atoms[pkg]):
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 3580, in _minimize_children
    root_config.root, atom, parent=parent)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 5569, in _select_pkg_highest_available
    ret = self._select_pkg_highest_available_imp(root, atom, onlydeps=onlydeps, parent=parent)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 5793, in _select_pkg_highest_available_imp
    root, atom, onlydeps=onlydeps, parent=parent)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 6094, in _wrapped_select_pkg_highest_available_imp
    onlydeps=onlydeps):
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 5487, in _iter_match_pkgs_atom
    installed=installed, onlydeps=onlydeps, myrepo=repo)
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 6834, in _pkg
    if not self._pkg_visibility_check(pkg) and \
  File "/usr/lib64/python2.7/site-packages/_emerge/depgraph.py", line 5837, in _pkg_visibility_check
    if pkg.visible:
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 177, in visible
    self._visible = self._eval_visiblity(self.masks)
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 171, in masks
    self._masks = self._eval_masks()
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 403, in _eval_masks
    self.cpv, self._metadata)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/config.py", line 2066, in _getMissingLicenses
    cpv, metadata["USE"], metadata["LICENSE"], metadata["SLOT"], metadata.get('repository'))
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 873, in __getitem__
    v = self._pkg._init_use()
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 665, in _init_use
    use_str = self._get_pkgsettings()["PORTAGE_USE"]
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 640, in _get_pkgsettings
    pkgsettings.setcpv(self)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/config.py", line 1411, in wrapper
    return f(self, *args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/config.py", line 1586, in setcpv
    self.puse = self._use_manager.getPUSE(cpv_slot)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/_config/UseManager.py", line 558, in getPUSE
    puse_matches = ordered_by_atom_specificity(cpdict, pkg)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/_config/helper.py", line 34, in ordered_by_atom_specificity
    bestmatch = best_match_to_list(pkg, keys)
  File "/usr/lib64/python2.7/site-packages/portage/dep/__init__.py", line 2066, in best_match_to_list
    for x in match_to_list(mypkg, mylist):
  File "/usr/lib64/python2.7/site-packages/portage/dep/__init__.py", line 2034, in match_to_list
    if x not in matches and match_from_list(x, pkgs):
  File "/usr/lib64/python2.7/site-packages/portage/dep/__init__.py", line 2349, in match_from_list
    use = getattr(x, "use", None)
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 634, in use
    self._init_use()
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 665, in _init_use
    use_str = self._get_pkgsettings()["PORTAGE_USE"]
  File "/usr/lib64/python2.7/site-packages/_emerge/Package.py", line 640, in _get_pkgsettings
    pkgsettings.setcpv(self)
  File "/usr/lib64/python2.7/site-packages/portage/package/ebuild/config.py", line 1408, in wrapper
    raise AssertionError('setcpv recursion detected')
AssertionError: setcpv recursion detected

 

I already deleted /var/git/meta-repo and followed https://github.com/funtoo/meta-repo#using-meta-repo to recreate it, but now I don't have any ideas left.

 

Share this post


Link to post
Share on other sites

13 answers to this question

Recommended Posts

  • 0

Okay, I got it. A configuration thing/possible conflict. I had added this to package.use:

Quote

>=dev-libs/xmlsec-1.2.24[nss] gcrypt

Because I had gotten this error before:

Quote

onli@Fallout:~$ sudo emerge --ask --update --deep --with-bdeps=y --newuse @world

These are the packages that would be merged, in order:

Calculating dependencies... done!

Oops! Conflicts have been encountered:

>>> games-util/xboxdrv-0.8.8:0/0::gentoo, installed, wants dev-libs/boost:0/1.62.0=

My candidates are:

>>> dev-libs/boost-1.63.0:0/1.63.0::core-kit, ebuild scheduled for merge has SLOT 0/1.63.0
>>> dev-libs/boost-1.62.0-r1:0/1.62.0::gentoo, installed has SLOT 0/1.62.0
>>> dev-libs/boost-1.63.0:0/1.63.0::core-kit, ebuild scheduled for merge, wants =dev-util/boost-build-1.63*
>>> dev-libs/boost-1.62.0-r1:0/1.62.0::gentoo, installed, wants =dev-util/boost-build-1.62*

My candidates are:

>>> dev-util/boost-build-1.63.0:0/0::core-kit, ebuild scheduled for merge has SLOT 0/0
>>> dev-util/boost-build-1.62.0-r1:0/0::gentoo, installed has SLOT 0/0


We hope this informational output has been useful in identifying the
problem. We are continually working to reduce conflicts. Do not
hesitate to report a bug at https://bugs.funtoo.org. Thank you! :)


!!! The ebuild selected to satisfy ">=dev-libs/xmlsec-1.2.24[nss]" has unmet requirements.
- dev-libs/xmlsec-1.2.24-r1::dev-kit USE="gnutls openssl -doc -gcrypt -libressl -nss -static-libs"

  The following REQUIRED_USE flag constraints are unsatisfied:
    gnutls? ( gcrypt )

  The above constraints are a subset of the following complete expression:
    any-of ( gcrypt gnutls nss openssl ) gnutls? ( gcrypt )

(dependency required by "app-office/libreoffice-5.4.2.2::kde-kit" [ebuild])
(dependency required by "@selected" [set])
(dependency required by "@world" [argument])

Now I removed that line and unmerged libreoffice, emerge could calculate the upgrade and found 72. Yeah :)

Thanks for the help!

Share this post


Link to post
Share on other sites
  • 0

@Sandro:

Quote

onli@Fallout:~$ eselect python list
Available Python interpreters, in order of preference:
  [1]   python2.7
  [2]   python3.4

(Sorry, the Code Box does not work).

@dhudson: I did that already (and now tried again of course), does not help. Though I don't actually know what ego does. Do I have to call that before using that emerge command, or is that used internally by emerge?

 

 

Share this post


Link to post
Share on other sites
  • 0

yes you have changed to  meta-repo  ego is the way now to sync  kits by giving command "ego sync"

what kind of error do you get when trying to update ego? may give a clue about what has gone wrong.

from the looks of the error you posted your version of portage is possibly dated, just a guess here.

Share this post


Link to post
Share on other sites
  • 0

I did an ego sync now, but that did not help.

There is no error when updating ego :) That works just fine, it gets compiled.
Portage might be outdated, but I tried to update it like ego, did not change.

Quote

onli@Fallout:~$ emerge --version
Portage 2.3.11 (python 2.7.13-final-0, funtoo/1.0/linux-gnu/arch/x86-64bit, gcc-4.9.3, glibc-2.23-r4, 4.8.15-1 x86_64)

 

 

Share this post


Link to post
Share on other sites
  • 0

thats odd, my portage is 2.3.12 does not even show 2.3.11

looks like your repo is not syncing correctly

 file a bug report on your original post error.

give your info like,

epro show

emerge --info 

maybe make.conf ect..

~$ ego query v portage
 sys-apps/portage| slot|               repo
-----------------+-----+-------------------
            2.3.8|    0| core-kit/1.0-prime
         2.3.8-r4|     | core-kit/1.0-prime
         2.3.8-r5|     | core-kit/1.0-prime
         2.3.8-r6|     | core-kit/1.0-prime
         2.3.8-r7|     | core-kit/1.0-prime
         2.3.8-r8|     | core-kit/1.0-prime
         * 2.3.12|     | core-kit/1.0-prime

regards,

Share this post


Link to post
Share on other sites
  • 0
2 minutes ago, Sandro said:

In any case ... i think that python3.4 must be "the preferred".

 


>
	eselect python set python3.4
	

 

Then retry with "ego sync"

Share this post


Link to post
Share on other sites
  • 0

Hm, it seemed to work just fine with Python 2.7 as the first, but I changed it around. Thanks :)

That I double-posted to describe the solution was not really easy to see with the re-ordering going on here, sorry about that. Everything is good now (or rather, the QT issues I have now seem to be unrelated and already in the bugtracker).

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...