On Wed, Feb 29, 2012 at 09:47:28AM +0900, Charles Plessy wrote: > I actually missed that you tried to inject the whole files.
I do not want to inject whole files. I just want to parse the original upstream files and the python-yaml parser failed for several of the available upstream files because these do not contain valid YAML syntax (and for all those I verified the String ': ' is responsible for the problem). > On the gathering > part, I am preparing a trigger that will update each packages that are > newly uploaded to the archive, by monitoring debian-devel-changes. I hope > to push this on upstream-metadata.debian.net this week-end. > > http://git.debian.org/?p=users/plessy/umegaya.git Fine. > For the YAML syntax, I validate using the way I documented on the wiki: > > http://wiki.debian.org/UpstreamMetadata > perl -MYAML -e '$/=""; Load(<STDIN>)' < upstream # needs the libyaml-perl > package installed > > This can easily become a Lintian check. > > But where is your SeaView upstream file from ? In SVN and Unstable, there is > a > space between the colon and the number: > > title: SeaView version 4 : a multiplatform graphical user interface for > sequence alignment and phylogenetic tree building It might be that I did some editing before quoting here. Feel free to try what you find in SVN with the Syntax checker at http://yaml-online-parser.appspot.com/ Whether there is a space in front of the ': ' or not does not seem to matter and if we want to let people edit those strings they will forget those tricks (and from an estetical point of view the spae before the colon is terribly ugly). > I see that the Perl module validates both versions with and without space > anyway. If this module is too laxist, we need to recommend another one. I also tried $ kwalify -f schema.yaml upstream /usr/lib/ruby/1.8/yaml.rb:217:in `load_documents': syntax error on line 7, col 27: ` title: SeaView version 4 : a multiplatform graphical user interface for sequence alignment and phylogenetic tree building' (ArgumentError) where $ cat schema.yaml type: seq sequence: - type: str So I think kwalify (written in Ruby) as well as Python parser agree that there is some problem here and when reading the specification I agree with this (even if I never touched YAML before and I'm far from pretending any knowledge in this topic). The question is, what we should really do. Trying to force people to learn how to type valid YAML will not increase the acceptance of debian/upstream so I would love to keep the current syntax. If the YAML parser of Perl is more relaxed about this syntax I could try to find some means to call this as a filter before importing into Python (which seems to be necessary for UDD importers. Alternatively we at least should enforce people to use quotes around titles containing ': ' strings (which works with the Python parser). Kind regards Andreas. -- http://fam-tille.de -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]

