Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Julian Andres Klode
Package: cupt
Version: 1.0.0~beta1
Severity: important

Hi, cupt fails to parse the following preferences file,
rendering the package unusable for me.

  Package: ndisgtk
  Pin: release unstable
  Pin-Priority: 100

j...@hp:~$ sudo cupt update
W: attempt to set wrong option 'apt::get::build-dep-automatic'
W: attempt to set wrong option 'apt::periodic::verbose'
E: bad config in file '/etc/apt/apt.conf.d/05etckeeper'
W: skipped configuration file '/etc/apt/apt.conf.d/05etckeeper'
E: bad config in file '/etc/apt/apt.conf.d/dpkg-architecture'
W: skipped configuration file '/etc/apt/apt.conf.d/dpkg-architecture'
E: bad condition in release expression at file '/etc/apt/preferences.d/ndisgtk' 
line 2
E: error while creating package cache

-- System Information:
Debian Release: lenny/sid
  APT prefers unstable
  APT policy: (990, 'unstable'), (350, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.30-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages cupt depends on:
ii  libcupt-perl 1.0.0~beta1 alternative front-end for dpkg -- 
ii  perl 5.10.0-25   Larry Wall's Practical Extraction 
ii  sensible-utils   0.0.1   Utilities for sensible alternative

cupt recommends no packages.

Versions of packages cupt suggests:
pn  libterm-readline-gnu-perl none (no description available)

-- no debconf information

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.


signature.asc
Description: Digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Julian Andres Klode
On Wed, Sep 23, 2009 at 04:55:20PM +0300, Eugene V. Lyubimkin wrote:
 Julian Andres Klode wrote:
  Package: cupt
  Version: 1.0.0~beta1
  Severity: important
  
  Hi, cupt fails to parse the following preferences file,
  rendering the package unusable for me.
  
Package: ndisgtk
Pin: release unstable
Pin-Priority: 100
  
 This is wrong-syntaxed file. This right syntax for the second line is:
 
 'Pin: release a=unstable'

Not really, see the apt_preferences manual page:
   Package: *
   Pin: release unstable
   Pin-Priority: 50

or even:
   the Version: line
   names the release version. For example, the packages in the tree 
might belong to Debian GNU/Linux release version 3.0. Note that there is
   normally no version number for the testing and unstable 
distributions because they have not been released yet. Specifying this in the 
APT
   preferences file would require one of the following lines.

   Pin: release v=3.0
   Pin: release a=stable, v=3.0
   Pin: release 3.0


But I guess we may want to deprecate this in apt, so alternative
implementations don't need to implement it (same for the #clear
#include in the configuration files).
-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.


signature.asc
Description: Digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Julian Andres Klode
On Wed, Sep 23, 2009 at 04:07:05PM +0200, Julian Andres Klode wrote:
 On Wed, Sep 23, 2009 at 04:55:20PM +0300, Eugene V. Lyubimkin wrote:
  Julian Andres Klode wrote:
   Package: cupt
   Version: 1.0.0~beta1
   Severity: important
   
   Hi, cupt fails to parse the following preferences file,
   rendering the package unusable for me.
   
 Package: ndisgtk
 Pin: release unstable
 Pin-Priority: 100
   
  This is wrong-syntaxed file. This right syntax for the second line is:
  
  'Pin: release a=unstable'
 
 Not really, see the apt_preferences manual page:
Package: *
Pin: release unstable
Pin-Priority: 50
 
It also fails at
 Pin: release o=Debian, a=stable
which is clearly documented as well.

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.


signature.asc
Description: Digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Eugene V. Lyubimkin
Julian Andres Klode wrote:
 On Wed, Sep 23, 2009 at 04:55:20PM +0300, Eugene V. Lyubimkin wrote:
 Julian Andres Klode wrote:
 Hi, cupt fails to parse the following preferences file,
 rendering the package unusable for me.

   Package: ndisgtk
   Pin: release unstable
   Pin-Priority: 100

 This is wrong-syntaxed file. This right syntax for the second line is:

 'Pin: release a=unstable'
 
 Not really, see the apt_preferences manual page:
Package: *
Pin: release unstable
Pin-Priority: 50
It's surely a typo. Even if apt recognizes it right (btw, does it?). These
three lines are from 'examples' page, no any other normative sentences allow it.

-- 
Eugene V. Lyubimkin aka JackYF, JID: jackyf.devel(maildog)gmail.com
C++/Perl developer, Debian Developer



signature.asc
Description: OpenPGP digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Julian Andres Klode
On Wed, Sep 23, 2009 at 05:19:28PM +0300, Eugene V. Lyubimkin wrote:
 Julian Andres Klode wrote:
  On Wed, Sep 23, 2009 at 04:55:20PM +0300, Eugene V. Lyubimkin wrote:
  Julian Andres Klode wrote:
  Hi, cupt fails to parse the following preferences file,
  rendering the package unusable for me.
 
Package: ndisgtk
Pin: release unstable
Pin-Priority: 100
 
  This is wrong-syntaxed file. This right syntax for the second line is:
 
  'Pin: release a=unstable'
  
  Not really, see the apt_preferences manual page:
 Package: *
 Pin: release unstable
 Pin-Priority: 50
 It's surely a typo. Even if apt recognizes it right (btw, does it?). These
 three lines are from 'examples' page, no any other normative sentences allow 
 it.

Reading versionmatch.cc it seems that specifying
Pin: release unstable
means that either the codename or the archive is unstable. This probably
is not well-documented, but it is there.

Relevant parts are:
ll. 57:
  // Are we a simple specification?
  string::const_iterator I = Data.begin();
  for (; I != Data.end()  *I != '='; I++);
  if (I == Data.end())
  {
 // Temporary
 if (isdigit(Data[0]))
RelVerStr = Data;
 else
RelRelease = Data;
ll. 200:
  if (RelRelease.empty() == false)
 if ((File-Archive == 0 ||
 stringcasecmp(RelRelease,File.Archive()) != 0) 
 (File-Codename == 0 ||
  stringcasecmp(RelRelease,File.Codename()) != 0))
   return false;



-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.


signature.asc
Description: Digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Eugene V. Lyubimkin
package cupt libcupt-perl
reopen 548051
reassign 548051 libcupt-perl
tags 548051 + pending
thanks

Julian Andres Klode wrote:
 It also fails at
  Pin: release o=Debian, a=stable
 which is clearly documented as well.
 
Ok, this is true positive. Fixed in master.

-- 
Eugene V. Lyubimkin aka JackYF, JID: jackyf.devel(maildog)gmail.com
C++/Perl developer, Debian Developer



signature.asc
Description: OpenPGP digital signature


Bug#548051: cupt: Fails to parse preferences files

2009-09-23 Thread Eugene V. Lyubimkin
Julian Andres Klode wrote:
 Reading versionmatch.cc it seems that specifying
   Pin: release unstable
 means that either the codename or the archive is unstable. This probably
 is not well-documented, but it is there.
Ok. So document it fairly in the next APT release and then ping me on IRC or
elsewhere to include the support for it.

-- 
Eugene V. Lyubimkin aka JackYF, JID: jackyf.devel(maildog)gmail.com
C++/Perl developer, Debian Developer



signature.asc
Description: OpenPGP digital signature