Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 276783 - repoman does not support valid metadata.xml
Summary: repoman does not support valid metadata.xml
Status: RESOLVED NEEDINFO
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Repoman (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-07-06 16:08 UTC by Jeremy Olexa (darkside) (RETIRED)
Modified: 2009-11-26 22:18 UTC (History)
1 user (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 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-07-06 16:08:40 UTC
Given this page: http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=2&chap=4#doc_chap2

repoman does not support <changelog> in metadata.xml, see that following error message:

RepoMan scours the neighborhood...
!!! metadata.xml is invalid:
!!! I/O error : Attempt to load network entity http://www.gentoo.org/dtd/metadata.dtd
!!! /tmp/gentoo-x86/app-portage/eix/metadata.xml:2: warning: failed to load external entity "http://www.gentoo.org/dtd/metadata.dtd"
!!! <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
!!!                                                                       ^
!!! /tmp/gentoo-x86/app-portage/eix/metadata.xml:3: element pkgmetadata: validity error : Element pkgmetadata content does not follow the DTD, expecting (herd | maintainer | longdescription | use | upstream)*, got (herd maintainer maintainer changelog use )
!!! Document /tmp/gentoo-x86/app-portage/eix/metadata.xml does not validate against /usr/portage/distfiles/metadata.dtd
  ebuild.notadded               1
   app-portage/eix/eix-0.17.0.ebuild
  metadata.bad                  1
   app-portage/eix/metadata.xml
Comment 1 Jeremy Olexa (darkside) (RETIRED) archtester gentoo-dev Security 2009-07-06 16:09:03 UTC
%% emerge --version
Portage 2.1.6.13 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r1, 2.6.29.4 x86_64)
Comment 2 Alec Warner (RETIRED) archtester gentoo-dev Security 2009-07-06 17:08:04 UTC
Repoman uses a DTD thats on the network.

curl http://www.gentoo.org/dtd/metadata.dtd

shows that the DTD supports changelogs; so the question is...why did your download of that DTD fail?

RepoMan scours the neighborhood...
!!! metadata.xml is invalid:
!!! I/O error : Attempt to load network entity
http://www.gentoo.org/dtd/metadata.dtd
!!! /tmp/gentoo-x86/app-portage/eix/metadata.xml:2: warning: failed to load
external entity "http://www.gentoo.org/dtd/metadata.dtd"

-A
Comment 3 Azamat H. Hackimov 2009-11-26 21:59:42 UTC
I have same error on my overlay after failed downloading of metadata.dtd. Where I need to place this file to fix it?
Comment 4 Zac Medico gentoo-dev 2009-11-26 22:07:28 UTC
(In reply to comment #3)
> I have same error on my overlay after failed downloading of metadata.dtd. Where
> I need to place this file to fix it?

wget -O $(portageq distdir)/metadata.dtd http://www.gentoo.org/dtd/metadata.dtd
Comment 5 Azamat H. Hackimov 2009-11-26 22:12:04 UTC
(In reply to comment #4)
> (In reply to comment #3)
> > I have same error on my overlay after failed downloading of metadata.dtd. Where
> > I need to place this file to fix it?
> 
> wget -O $(portageq distdir)/metadata.dtd http://www.gentoo.org/dtd/metadata.dtd
> 
Ahh, sorry solved by myself already :).

There my solution: during refreshing download in /usr/portage/distfiles repoman reated zero-sized metadata.dtd. I deleted it and now repoman works fine. Thank you!
Comment 6 Zac Medico gentoo-dev 2009-11-26 22:18:14 UTC
(In reply to comment #5)
> There my solution: during refreshing download in /usr/portage/distfiles repoman
> reated zero-sized metadata.dtd.

That case should be fixed in latest portage (2.1.7.x). Now it downloads metadata.dtd to a temporary file and renames the temporary file only after a complete and successful download.