<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "http://bugs.gentoo.org/bugzilla.dtd">

<bugzilla version="2.22.7"
          urlbase="http://bugs.gentoo.org/"
          maintainer="bugzilla@gentoo.org"
>

    <bug>
          <bug_id>171962</bug_id>
          
          <creation_ts>2007-03-23 21:24 0000</creation_ts>
          <short_desc>Make repoman check ChangeLog syntax</short_desc>
          <delta_ts>2008-09-27 11:44:57 0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>Portage Development</product>
          <component>Repoman</component>
          <version>2.2</version>
          <rep_platform>All</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>NEW</bug_status>
          
          
          
          
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>betelgeuse@gentoo.org</reporter>
          <assigned_to>dev-portage@gentoo.org</assigned_to>
          <cc>coldwind@gentoo.org</cc>
    
    <cc>fauli@gentoo.org</cc>

      

      
          <long_desc isprivate="0">
            <who>betelgeuse@gentoo.org</who>
            <bug_when>2007-03-23 21:24:53 0000</bug_when>
            <thetext>Here is an example broken entry:

# $Header: /var/cvsroot/gentoo-x86/x11-libs/libXinerama/ChangeLog,v 1.27 2007/03/22 02:18:21 joshuabaergen Exp $

  22 Mar 2007; Joshua Baergen &lt;joshuabaergen@gentoo.org&gt;
  +libXinerama-1.0.2.ebuild:
  Version bump.  Includes new documentation and some small code tweaks.

This is missing the 

*libXinerama-1.0.2 (22 Mar 2007) 

line. Having this line is important because emerge -pl libXinerama does not work without it.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>betelgeuse@gentoo.org</who>
            <bug_when>2007-03-23 21:26:29 0000</bug_when>
            <thetext>Created an attachment (id=114184)
check_changelog.py

Here is the logic for checking ChangeLogs. Can be run like:

find /usr/portage/ -name &quot;ChangeLog&quot; | xargs python changelog.py

It seems the tree is full of broken entries atm:

betelgeuse@pena ~/python $ find /usr/portage/ -name &quot;ChangeLog&quot; | xargs python changelog.py  | wc -l
2545
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>betelgeuse@gentoo.org</who>
            <bug_when>2007-03-23 22:13:19 0000</bug_when>
            <thetext>Created an attachment (id=114194)
check_changelog.py

Handle package names with + in them.</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>betelgeuse@gentoo.org</who>
            <bug_when>2007-03-24 10:51:29 0000</bug_when>
            <thetext>Created an attachment (id=114220)
check_changelog.py

Take package moves into account and check the date syntax for *foo-1.0 (date) lines.

http://dev.gentoo.org/~betelgeuse/changelogs_syntax_errors.txt</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>zmedico@gentoo.org</who>
            <bug_when>2007-03-27 21:09:38 0000</bug_when>
            <thetext>As discussed on irc, I&apos;d like to add 2 new repoman checks for this:

1) Fail if a new ebuild has been added without an appropriate ChangeLog entry.
2) Warn if there are broken ChangeLog entries for previously existing ebuilds.
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>fauli@gentoo.org</who>
            <bug_when>2007-05-24 20:42:37 0000</bug_when>
            <thetext>(In reply to comment #4)
&gt; 1) Fail if a new ebuild has been added without an appropriate ChangeLog entry.
&gt; 2) Warn if there are broken ChangeLog entries for previously existing ebuilds.

 What is the status?
</thetext>
          </long_desc>
          <long_desc isprivate="0">
            <who>genone@gentoo.org</who>
            <bug_when>2007-06-23 16:45:29 0000</bug_when>
            <thetext>Do we really want to add more stuff into the current repoman incarnation? That beast *really* needs to be rewritten.</thetext>
          </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>114184</attachid>
            <date>2007-03-23 21:26 0000</date>
            <desc>check_changelog.py</desc>
            <filename>changelog.py</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9weXRob24KaW1wb3J0IHN5cwppbXBvcnQgcmUKCiMgTWF0Y2ggdGhlIDxkYXk+
IDxtb250aD4gPHllYXI+IGZvcm1hdCB3ZSB1c2UgdG8gZmluZAojIHdoZXJlIGVudHJpZXMgYmVn
aW4KZGF0ZV9yZWdleCA9IHJlLmNvbXBpbGUoIlxkezJ9IFx3ezN9IFxkezR9OyIpCgplYnVpbGRf
cmVnZXggPSByZS5jb21waWxlKCJcK1xTK1wuZWJ1aWxkIikKCmRlZiBjaGVja19jaGFuZ2Vsb2co
ZmlsZSk6CglmID0gb3BlbihmaWxlKQoJbGluZXMgPSBmLnJlYWRsaW5lcygpCgluPTAKCWxlbmd0
aCA9IGxlbihsaW5lcykKCXdoaWxlIG4gPCBsZW5ndGg6CgkJbGluZSA9IGxpbmVzW25dCgkJaWYg
ZGF0ZV9yZWdleC5zZWFyY2gobGluZSk6CgkJCXdoaWxlIFRydWU6CgkJCQlmb3IgbSBpbiBlYnVp
bGRfcmVnZXguZmluZGFsbChsaW5lKToKCQkJCQkjIHJlbW92ZSArIGFuZCB0cmFpbGluZyAuZWJ1
aWxkCgkJCQkJdG9fZmluZCA9IG1bMTotN10KCQkJCQlpID0gbi0xCgkJCQkJbWF0Y2ggPSBGYWxz
ZQoJCQkJCXdoaWxlIGkgPj0gMCBhbmQgbm90IG1hdGNoOgoJCQkJCQltYXRjaCA9IGxpbmVzW2ld
LnN0YXJ0c3dpdGgoIioiICsgdG9fZmluZCkKCQkJCQkJaS09MQoJCQkJCWlmIG5vdCBtYXRjaDoK
CQkJCQkJcHJpbnQgZmlsZSArICIgaXMgYnJva2VuIChuZXcgZWJ1aWxkIG9uIGxpbmUgIiArIHN0
cihuKzEpICsgIikiCgkJCQluKz0xCgkJCQlpZiBsaW5lLmZpbmQoIjoiKSA+PSAwIG9yIG4gPT0g
bGVuZ3RoOgoJCQkJCWJyZWFrCgkJCQlsaW5lID0gbGluZXNbbl0KCQluKz0xCQoJZi5jbG9zZSgp
Cgpmb3IgY2ggaW4gc3lzLmFyZ3ZbMTpdOgoJY2hlY2tfY2hhbmdlbG9nKGNoKQo=
</data>        

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>114194</attachid>
            <date>2007-03-23 22:13 0000</date>
            <desc>check_changelog.py</desc>
            <filename>changelog.py</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9weXRob24KaW1wb3J0IHN5cwppbXBvcnQgcmUKCiMgTWF0Y2ggdGhlIDxkYXk+
IDxtb250aD4gPHllYXI+IGZvcm1hdCB3ZSB1c2UgdG8gZmluZAojIHdoZXJlIGVudHJpZXMgYmVn
aW4KZGF0ZV9yZWdleCA9IHJlLmNvbXBpbGUoIlxkezJ9IFx3ezN9IFxkezR9OyIpCgojICsgaXMg
dXNlZCBpbiBwYWNrYWdlIG5hbWVzIChmb3IgZXhhbXBsZSBndGsrKSBzbyB0cnkgdG8gaGFuZGxl
IHRoYXQKZWJ1aWxkX3JlZ2V4ID0gcmUuY29tcGlsZSgiKCgsfFxzKVwrW1xTXCtdK1wuZWJ1aWxk
KSIpCgpkZWYgY2hlY2tfY2hhbmdlbG9nKGZpbGUpOgoJZiA9IG9wZW4oZmlsZSkKCWxpbmVzID0g
Zi5yZWFkbGluZXMoKQoJbj0wCglsZW5ndGggPSBsZW4obGluZXMpCglmaWxlX3ByaW50ZWQgPSBG
YWxzZQoJd2hpbGUgbiA8IGxlbmd0aDoKCQlsaW5lID0gbGluZXNbbl0KCQlpZiBkYXRlX3JlZ2V4
LnNlYXJjaChsaW5lKToKCQkJd2hpbGUgVHJ1ZToKCQkJCWZvciBtIGluIGVidWlsZF9yZWdleC5m
aW5kYWxsKGxpbmUpOgoJCQkJCSMgcmVtb3ZlICsgYW5kIHRyYWlsaW5nIC5lYnVpbGQKCQkJCQl0
b19maW5kID0gbVswXVsyOi03XQoJCQkJCWkgPSBuLTEKCQkJCQltYXRjaCA9IEZhbHNlCgkJCQkJ
d2hpbGUgaSA+PSAwIGFuZCBub3QgbWF0Y2g6CgkJCQkJCW1hdGNoID0gbGluZXNbaV0uc3RhcnRz
d2l0aCgiKiIgKyB0b19maW5kKQoJCQkJCQlpLT0xCgkJCQkJaWYgbm90IG1hdGNoOgoJCQkJCQlp
ZiBub3QgZmlsZV9wcmludGVkOgoJCQkJCQkJcHJpbnQgZmlsZSArICIgaXMgbWlzc2luZyAqJHtQ
fSAoZGF0ZSkgZW50cmllcyBmb3I6IgoJCQkJCQkJZmlsZV9wcmludGVkID0gVHJ1ZQoJCQkJCQlw
cmludCAiXHRuZXcgZWJ1aWxkIGVudHJ5IG9uIGxpbmUgIiArIHN0cihuKzEpCgkJCQluKz0xCgkJ
CQlpZiBsaW5lLmZpbmQoIjoiKSA+PSAwIG9yIG4gPT0gbGVuZ3RoOgoJCQkJCWJyZWFrCgkJCQls
aW5lID0gbGluZXNbbl0KCQluKz0xCQoJZi5jbG9zZSgpCgpmb3IgY2ggaW4gc3lzLmFyZ3ZbMTpd
OgoJY2hlY2tfY2hhbmdlbG9nKGNoKQo=
</data>        

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>114220</attachid>
            <date>2007-03-24 10:51 0000</date>
            <desc>check_changelog.py</desc>
            <filename>changelog.py</filename>
            <type>text/plain</type>
            <data encoding="base64">IyEvdXNyL2Jpbi9weXRob24KaW1wb3J0IHN5cwppbXBvcnQgcmUKCiMgTWF0Y2ggdGhlIDxkYXk+
IDxtb250aD4gPHllYXI+IGZvcm1hdCB3ZSB1c2UgdG8gZmluZAojIHdoZXJlIGVudHJpZXMgYmVn
aW4KZGF0ZV9mb3JtYXQ9IlxkezEsMn0gXHd7M30gXGR7NH0iCgojIFVzZWQgaW4gdmVyc2lvbi9y
ZXZpc2lvbiBidW1wcyAqZm9vYmFyLTEuMCAoZGF0ZSkKZGF0ZV9yZWdleCA9IHJlLmNvbXBpbGUo
ZGF0ZV9mb3JtYXQpCgojIFVzZWQgaW4gZW50cmllcyB3aXRoIHRoZSBhY3R1YWwgY2hhbmdlIHRl
eHQKZGF0ZV9yZWdleF9zZW1pID0gcmUuY29tcGlsZShkYXRlX2Zvcm1hdCArICI7IikKCiMgKyBp
cyB1c2VkIGluIHBhY2thZ2UgbmFtZXMgKGZvciBleGFtcGxlIGd0ayspIHNvIHRyeSB0byBoYW5k
bGUgdGhhdAplYnVpbGRfcmVnZXggPSByZS5jb21waWxlKCIoKCx8XHMpXCtbXFNcK10rXC5lYnVp
bGQpIikKCmRlZiBjaGVja19jaGFuZ2Vsb2coZmlsZSk6CglmID0gb3BlbihmaWxlKQoJbGluZXMg
PSBmLnJlYWRsaW5lcygpCgoJIyBBbGwgKiR7UH0gZW50cmllcyBhcyAke1B9CglidW1wcyA9IFtd
CgoJZmlsZV9wcmludGVkID0gRmFsc2UKCgkjIFNjYW4gdGhlIHdob2xlIGZpbGUgZm9yIG5ldyBl
bnRyaWVzIGJlY2F1c2Ugd2l0aCBmb3IgZXhhbXBsZSBtb3ZlcwoJIyBmcm9tIG9uZSBjYXRlZ29y
eSB0byBhbm90aGVyIHdlIGhhdmUgdGhlIGVidWlsZHMgYXBwZWFyaW5nIGFzIG5ldwoJIyBvbmVz
IGFnYWluCglmb3IgbGluZSBpbiBsaW5lczoKCQlpZiBsaW5lLnN0YXJ0c3dpdGgoIioiKToKCQkJ
aWYgbm90IGRhdGVfcmVnZXguc2VhcmNoKGxpbmUpOgoJCQkJaWYgbm90IGZpbGVfcHJpbnRlZDoK
CQkJCQlwcmludCBmaWxlICsgIjoiCgkJCQkJZmlsZV9wcmludGVkID0gVHJ1ZQoJCQkJc3lzLnN0
ZG91dC53cml0ZSgiXHRiYWQgZGF0ZSBlbnRyeSBmb3IgbmV3IHJldmlzaW9uL3ZlcnNpb24gZW50
cnk6ICIgKyBsaW5lKQoJCQllbHNlOgoJCQkJdHJ5OgoJCQkJCWJ1bXBzLmFwcGVuZChsaW5lWzE6
bGluZS5pbmRleCgiICIpXSkKCQkJCWV4Y2VwdCBWYWx1ZUVycm9yOgoJCQkJCXN5cy5zdGRlcnIu
d3JpdGUoIkZhaWx1cmUgaW4gcGFyc2luZzogIiArIGZpbGUgKyAiXG4iKQoJbj0wCglsZW5ndGgg
PSBsZW4obGluZXMpCgl3aGlsZSBuIDwgbGVuZ3RoOgoJCWxpbmUgPSBsaW5lc1tuXQoJCWlmIGRh
dGVfcmVnZXhfc2VtaS5zZWFyY2gobGluZSk6CgkJCXdoaWxlIFRydWU6CgkJCQlmb3IgbSBpbiBl
YnVpbGRfcmVnZXguZmluZGFsbChsaW5lKToKCQkJCQkjIHJlbW92ZSArIGFuZCB0cmFpbGluZyAu
ZWJ1aWxkCgkJCQkJdG9fZmluZCA9IG1bMF1bMjotN10KCQkJCQlpZiBub3QgdG9fZmluZCBpbiBi
dW1wczoKCQkJCQkJaWYgbm90IGZpbGVfcHJpbnRlZDoKCQkJCQkJCXByaW50IGZpbGUgKyAiOiIK
CQkJCQkJCWZpbGVfcHJpbnRlZCA9IFRydWUKCQkJCQkJcHJpbnQgIlx0TWlzc2luZyBuZXcgZWJ1
aWxkIGVudHJ5ICoke1B9IChkYXRlKSBmb3IgZW50cnkgb24gbGluZSAiICsgc3RyKG4rMSkKCQkJ
CW4rPTEKCQkJCWlmIGxpbmUuZmluZCgiOiIpID49IDAgb3IgbiA9PSBsZW5ndGg6CgkJCQkJYnJl
YWsKCQkJCWxpbmUgPSBsaW5lc1tuXQoJCW4rPTEJCglmLmNsb3NlKCkKCmZvciBjaCBpbiBzeXMu
YXJndlsxOl06CgljaGVja19jaGFuZ2Vsb2coY2gpCg==
</data>        

          </attachment>
    </bug>

</bugzilla>