On Sun, Oct 22, 2017 at 11:14:04AM +0200, Dominique Dumont wrote:
> On Sunday, 22 October 2017 08:55:44 CEST Andreas Tille wrote:
> > $ cme run paste-license  --arg license=CeCILL --arg file=COPYING >
> > copyright.patch Log4perl: Seems like no initialization happened. Forgot to
> > call init()? 
> 
> That's a bug in cme that will be fixed soon.

OK.
 
> > Warning: Files:"*" License short_name skipping value CeCILL
> > because of the following errors: license 'CeCILL' is not declared in main
> > License section. Expected
> 
> Looks like you copyright file already has
> Files: *
> License: CeCiLL
> 
> without the matching section in Licenses (the one you trying to add). cme 
> emits a warning when reading a copyright file with this error. This value is 
> ignored because of this error.

Sorry, I do not understand.  I the string CeCILL (with capital I) is in the
main license section.  Could you please be more verbose how d/copyright needs
to look like to make cme add the license text?

> > Warning: Files:"debian/*" License short_name skipping value CeCILL because
> > of the following errors: license 'CeCILL' is not declared in main License
> > section. Expected
> 
> Likewise.

Likewise I fail to understand. ;-)
 
> > License CeCILL is not used in Files: section
> 
> The new added license is seen as unused because the CeCILL values were 
> ignored 
> above. (*)
> 
> > Configuration item 'Files:"*" License short_name' has a wrong value:
> >         Undefined mandatory value.
> 
> This is an error shown while writing the file. cme does not accept to write 
> back a copyright file containing errors. The values are missing because, err, 
> they were ignored above because, err, the main license was missing. 
> 
> I guess that error handling in cme can be improved ...

Yes please.  I'd be really happy if you could push a d/copyright that is
correctly formed to let cme work.
 
> > I admit I do not really understand all the output to stderr. 
> 
> I hope I gave some clue above ...

Not really - but it might be probably me. ;-)
 
> > The output
> > to stdout 
> 
> The fact that stdout is redirect makes the errors above harder to understand.

I redirected simply for this mail here ...
 
> > (in my example redirected to copyright.patch) is
> 
> err. it never occurred to me that someone could feed cme output to patch ....

Yes, I had this clue only since the first column '+' is a feature
frequently used in patch.  Just a wild guess of mine.
 
> > So this does not really help since its neither a valid patch for
> > d/copyright nor can I add this content there without editing.  It just
> > added a '+' to the original license text which is not really helpful.
> > May be I'm continuously missing the point but shouldn't it add rather
> > a ' ' instead of a '+' and replace empty lines by ' .'?
> 
> cme should write debian/copyright provided no error is left.

That's what I'd prefer.
 
> Following Perl's TIMTOWTDI tradition, I suggest to fix this problem by either:
> 
> - use -force option with cme and add back the License entries after cme has 
> saved the file
> - use the GUI (cme edit dpkg-copyright) and cut'n'paste CeCILL license text 
> in 
> the License section (see [1] for details)

I admit I do not really like that GUI.

> - tweak your file so that cme check returns no warning before running paste-
> license
> - fix everything at once with: cme modify dpkg-copyright -force 
> 'License:CeCILL 
> text=.file(COPYING) ! Files:"*" License short_name=CeCILL Files:"debian/*" 
> License short_name=CeCILL'

$ cme modify dpkg-copyright -force 'License:CeCILL text=.file(COPYING) ! 
Files:"*" License short_name=CeCILL Files:"debian/*" License short_name=CeCILL'
cme: using Dpkg::Copyright model
Warning: Files:"*" License short_name skipping value CeCILL because of the 
following errors:
license 'CeCILL' is not declared in main License section. Expected 

Warning: Files:"debian/*" License short_name skipping value CeCILL because of 
the following errors:
license 'CeCILL' is not declared in main License section. Expected 

License CeCILL is not used in Files: section
object 'Files:"*" License' error: unknown element 'Files'. Either your file has 
an error or Dpkg::Copyright::FileLicense model is lagging behind. In the latter 
case, please submit a bug report using 'reportbug libconfig-model-dpkg-perl'. 
See cme man page for details.
        Expected elements: 'full_license','short_name'


Hmmm, sorry, no change to d/copyright.
 
> Hope this helps

No, sorry, I seem I totally fail to understand.  Why exactly can't cme
simply copy the text that is specified as CeCILL into my copyright?

Sorry for my probably very naive questions but obviously I do not
understand the philosphy behind.

Kind regards

         Andreas.

> [1] 
> https://github.com/dod38fr/config-model/wiki/Managing-Debian-packages-with-cme#maintaining-debian-copyright-file
> 
> (*) I always wondered if an erroneous value found in a file should be ignored 
> or loaded. I've chosen the first option, which leads to the cascading errors 
> you've found. I guess that I should implement the second option at least when 
> -force option is used.
> 
> -- 
>  https://github.com/dod38fr/   -o- http://search.cpan.org/~ddumont/
> http://ddumont.wordpress.com/  -o-   irc: dod at irc.debian.org
> 
> 

-- 
http://fam-tille.de

Reply via email to