Trying to locate the source of bug 183205 in a chrooted stage3, I found this: # emerge -abv cedet These are the packages that would be merged, in order: Calculating dependencies... done! [nomerge ] app-emacs/cedet-1.0_pre4 [nomerge ] virtual/emacs-21 [nomerge ] app-editors/emacs-21.4-r12 USE="leim lesstif motif nls -X -Xaw3d -nosendmail" [ebuild N ] app-admin/eselect-emacs-1.0 [ebuild N ] app-admin/eselect-1.0.10 USE="bash-completion doc -vim-syntax" [ebuild N ] dev-python/docutils-0.4-r1 USE="emacs -glep" [ebuild N ] virtual/emacs-21 [ebuild N ] app-editors/emacs-21.4-r12 USE="leim lesstif motif nls -X -Xaw3d -nosendmail" !!! Error: circular dependencies: ('ebuild', '/', 'app-editors/emacs-21.4-r12', 'merge') depends on ('ebuild', '/', 'app-admin/eselect-emacs-1.0', 'merge') (hard) ('ebuild', '/', 'app-admin/eselect-1.0.10', 'merge') depends on ('ebuild', '/', 'dev-python/docutils-0.4-r1', 'merge') (hard) ('ebuild', '/', 'virtual/emacs-21', 'merge') depends on ('ebuild', '/', 'app-editors/emacs-21.4-r12', 'merge') (medium) ('ebuild', '/', 'dev-python/docutils-0.4-r1', 'merge') depends on ('ebuild', '/', 'app-editors/emacs-21.4-r12', 'merge') (hard) ('ebuild', '/', 'virtual/emacs-21', 'merge') (hard) ('ebuild', '/', 'app-admin/eselect-emacs-1.0', 'merge') depends on ('ebuild', '/', 'app-admin/eselect-1.0.10', 'merge') (medium) Disabling the emacs USE flag for docutils solved the issue of course, but it would be even better if there was a way to avoid this issue altogether. Maybe the emacs dependant part of docutils could be put into a separate package and made a PDEPEND?
There already is app-emacs/rst-mode in the tree. docutils should just PDEPEND on it and remove its own emacs support. Patch will follow.
Created attachment 123110 [details, diff] Proposed patch for docutils-0.4-r1.ebuild On second thought, the PDEPEND does not make much sense; just remove the emacs USE flag completely.
(In reply to comment #2) > Created an attachment (id=123110) [edit] > Proposed patch for docutils-0.4-r1.ebuild > > On second thought, the PDEPEND does not make much sense; just remove the emacs > USE flag completely. There is a typo in the pkg_postrm() message. The package is called app-emacs/rst-mode
Before adding this patch we need KEYWORDS for rst-mode: "~alpha amd64 arm hppa ia64 ppc ppc64 s390 sh sparc ~sparc-fbsd x86 ~x86fbsd" Currently we have "~amd64 ~ppc ~sparc ~x86". emacs USE flag is masked on mips, so no need to preserve that docutils KEYWORD
(In reply to comment #3) > The package is called app-emacs/rst-mode. True. But rst-mode is dead (see its HOMEPAGE) and superseded by rst, so I think it makes sense to take the sources that are included in docutils and make a new package from it (see Emacs overlay).
On behalf of the Emacs team I propose the following: 1) Package move app-emacs/rst-mode -> app-emacs/rst 2) Release rst.el from docutils sources as rst-20070329 (or rst-0.4, depends if we share the docutils distfile or pack our own one) 2) Keywording for app-emacs/rst 3) Remove Emacs support from dev-python/docutils (see attachment 123110 [details, diff]) Python team, please comment.
The solution looks fine to me. /me pokes other python guys..
(In reply to comment #6) > On behalf of the Emacs team I propose the following: Here ist another third of the Emacs team: We will take care of everything, but will keep you in CC. We are currently testing app-emacs/rst in our Overlay (http://overlays.gentoo.org/proj/emacs/) and will move it to the tree ASAP. I strongly advise an immediate bump to stable for all needed arches to kill this circular dependency.
(In reply to comment #6) > 1) Package move app-emacs/rst-mode -> app-emacs/rst > 2) Release rst.el from docutils sources [...] 1) and 2) done. Released as app-emacs/rst-0.4 as it shares the docutils-0.4.tar.gz distfile. Python team, feel free to add your herd to the package's metadata. > 3) Keywording for app-emacs/rst In progress: bug #183312. > 4) Remove Emacs support from dev-python/docutils
Created attachment 123139 [details, diff] Proposed patch for docutils-0.4-r1.ebuild - without PDEPEND The elisp SITEFILE can also be removed.
Created attachment 123141 [details, diff] Proposed patch for docutils-0.4-r1.ebuild - with PDEPEND Alternatively, the originally proposed PDEPEND solution.
(In reply to comment #10) > Created an attachment (id=123139) (In reply to comment #11) > Created an attachment (id=123141) Well, it's still not right. :-( elisp-common.eclass should be removed from inherit in both cases. Attaching no new patch though. Sorry for the bug spam.
(In reply to comment #8) > Here ist another third of the Emacs team: We will take care of everything, > but will keep you in CC. docutils-0.4-r2 committed to tree.
(In reply to comment #13) > docutils-0.4-r2 committed to tree. Stable on all archs (except mips, which was never affected by the problem). Closing. Thank you for reporting the issue.