Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 183242 - circular dependency: emacs / eselect / docutils
Summary: circular dependency: emacs / eselect / docutils
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Emacs project
URL:
Whiteboard:
Keywords:
Depends on: 183735
Blocks:
  Show dependency tree
 
Reported: 2007-06-26 12:15 UTC by Martin von Gagern
Modified: 2007-08-25 23:23 UTC (History)
2 users (show)

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


Attachments
Proposed patch for docutils-0.4-r1.ebuild (docutils-0.4-r1.ebuild.patch,1.21 KB, patch)
2007-06-26 13:38 UTC, Ulrich Müller
Details | Diff
Proposed patch for docutils-0.4-r1.ebuild - without PDEPEND (docutils-0.4-r1.ebuild.patch,1.25 KB, patch)
2007-06-26 20:24 UTC, Ulrich Müller
Details | Diff
Proposed patch for docutils-0.4-r1.ebuild - with PDEPEND (docutils-0.4-r1.ebuild.patch,1.10 KB, patch)
2007-06-26 20:30 UTC, Ulrich Müller
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Martin von Gagern 2007-06-26 12:15:39 UTC
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?
Comment 1 Ulrich Müller gentoo-dev 2007-06-26 13:12:03 UTC
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.
Comment 2 Ulrich Müller gentoo-dev 2007-06-26 13:38:59 UTC
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.
Comment 3 Christian Faulhammer (RETIRED) gentoo-dev 2007-06-26 13:48:17 UTC
(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

Comment 4 Christian Faulhammer (RETIRED) gentoo-dev 2007-06-26 13:54:23 UTC
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
Comment 5 Ulrich Müller gentoo-dev 2007-06-26 14:42:24 UTC
(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).
Comment 6 Ulrich Müller gentoo-dev 2007-06-26 18:16:13 UTC
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.
Comment 7 Ali Polatel (RETIRED) gentoo-dev 2007-06-26 18:33:23 UTC
   The solution looks fine to me.
   /me pokes other python guys..
Comment 8 Christian Faulhammer (RETIRED) gentoo-dev 2007-06-26 18:40:03 UTC
(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.
Comment 9 Ulrich Müller gentoo-dev 2007-06-26 20:11:15 UTC
(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
Comment 10 Ulrich Müller gentoo-dev 2007-06-26 20:24:52 UTC
Created attachment 123139 [details, diff]
Proposed patch for docutils-0.4-r1.ebuild - without PDEPEND

The elisp SITEFILE can also be removed.
Comment 11 Ulrich Müller gentoo-dev 2007-06-26 20:30:50 UTC
Created attachment 123141 [details, diff]
Proposed patch for docutils-0.4-r1.ebuild - with PDEPEND

Alternatively, the originally proposed PDEPEND solution.
Comment 12 Ulrich Müller gentoo-dev 2007-06-26 23:27:06 UTC
(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.
Comment 13 Ulrich Müller gentoo-dev 2007-06-30 09:02:14 UTC
(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.
Comment 14 Ulrich Müller gentoo-dev 2007-08-25 23:23:45 UTC
(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.