Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2012-03-13 Thread Eugene V. Lyubimkin
Hi James,

# cat /etc/apt/preferences

Explanation: Pinned by apt-listbugs at Mon Oct 17 20:51:13 + 2011
Explanation:   #615671: derivations: ftbfs with gcc-4.5
Package: derivations
Pin: version *
Pin-Priority: -3
  

As I understand, this is now officially implemented in apt-listbugs
since 2012, and such low pins should prevent installations/upgrades of
such pinned packages in Cupt unless they are unconditionally (or almost
so [1]) requested.

If that's the case, would you say I can close this bug now?

We had a useful discussion with Francesco about possible future
improvements here in the thread, but I think if we want to follow up on
it I'll just open a new bug with a link to this one.

[1] i.e. are absolute dependencies of something that is unconditionally
requested, or are the only alternative to something really bad like
removing essential packages or doing a bunch of downgrades.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2012-03-13 Thread Francesco Poli

Hi Eugene!   :-)


On Tue, 13 Mar 2012 10:15:02 +0200 Eugene V. Lyubimkin wrote:

[...]
 # cat /etc/apt/preferences
 
 Explanation: Pinned by apt-listbugs at Mon Oct 17 20:51:13 + 2011
 Explanation:   #615671: derivations: ftbfs with gcc-4.5
 Package: derivations
 Pin: version *
 Pin-Priority: -3
   
 
 As I understand, this is now officially implemented in apt-listbugs
 since 2012

Yes, I confirm that this is implemented in apt-listbugs, starting from
version 0.1.6 ...

Bye!


-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgpszQBjdzptr.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-29 Thread Francesco Poli
On Mon, 24 Oct 2011 10:10:10 +0300 Eugene V. Lyubimkin wrote:

[...]
  The user should have (approximately) equivalent pins for both package
  managers.
 
 That's impossible if there are different pin priority systems.

Well, but I hope there will be a way to tell cupt that:

 (A) version v1 of package P1 (which *is* currently installed) must not
 be upgraded

 (B) package P2 (which is currently *not* installed) must not be
 installed, whatever version is considered

These are the basic rules that apt-listbugs injects into the apt
pinning preferences.
If there's a way to express such rules for cupt, then apt-listbugs
will be able to be useful for cupt users.
If not, then I will have to document that cupt is not fully supported
by apt-listbugs and that cupt users should not expect apt-listbugs to
work properly for them...

 
  As I said above, I am under the impression that apt-listbugs needs to
  *simultaneously* take care of each different scheme that must be
  supported.
  Currently, only one scheme is supported and everything is simple.
  Adding support for a second scheme requires code which is able to
  figure out how to handle weird situations that may arise when the two
  configuration files disagree on something.
 
 I was under impression that it's possible not to mix modes. Different
 schemes are inconsistent from the very beginning, they disagree on
 almost everything even if there would be no configuration files. I
 imagined it as 'if apt is installed, run in apt mode, forget about any
 non-apt schemes as if they don't exist', 'if say (cupt) is installed, run
 in cupt mode, forget about any non-cupt schemes as if they don't exist'.

I think that the condition apt is installed is satisfied on almost
any Debian box...
I tried

  $ aptitude -s --purge-unused install apt_ aptitude_ cupt

It said that 14 packages need to be removed and 6 recommendations need
to be broken, in order to do this.
Even reportbug depends on apt...
This may of course change in the future, but I am under the impression
that you'll still find apt installed on most Debian boxes for quite some
time.

Moreover, the condition cupt is installed does not necessarily mean
that the system administrator regularly uses cupt to manage packages.

I don't think that apt-listbugs can figure out whether it should deal
with apt pinning preferences or with cupt pinning preferences.
Hence, if there are two distinct pinning preferences schemes,
apt-listbugs should try to *simultaneously* deal with both of them
(if at all possible).

Finally, even if we find a way to have apt-listbugs figure out which
scheme it should use, there is always the possible scenario of a user
switching from apt(itude) to cupt or vice-versa.
That user should not lose previously set pinning preferences! 

[...]
 For the design point of view, it could be so that utilities like
 apt-listbugs work with the own state file with an own format in a
 package-manager-agnostic way, and for each package manager there is a
 tiny submodule which converts that file/data to a
 package-manager-specific configuration file every time the state
 file/data changes. For that to work, utilities should not change its
 behavior depending on the other (user) preferences, which I believe
 would be better. But that's my humble opinion.

If I understand correctly, you are saying that apt-listbugs should
generate rules (such as A and B above) in a package-manager-agnostic
format and then convert them into package-manager-specific forms.
I am not sure that this could work well: what if a user manually
modifies the package-manager-specific configuration, without updating
the package-manager-agnostic configuration accordingly? apt-listbugs
would begin working with a distorted vision of the actual package
manager configuration...


-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgpQ6kX8NPduU.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-29 Thread Eugene V. Lyubimkin
Hi Francesco,

On 2011-10-29 18:33, Francesco Poli wrote:
[...]
 Well, but I hope there will be a way to tell cupt that:
 
  (A) version v1 of package P1 (which *is* currently installed) must not
  be upgraded
 
  (B) package P2 (which is currently *not* installed) must not be
  installed, whatever version is considered
 

Yes, there will be. Again, user will be able to override that, but then
he/she will know what that may lead to.

 I think that the condition apt is installed is satisfied on almost
 any Debian box...

Yes.

 Moreover, the condition cupt is installed does not necessarily mean
 that the system administrator regularly uses cupt to manage packages.

However, this argument works in both directions: there are people (as in
 =1 :)) who have apt installed but don't use it to manage packages.

 I don't think that apt-listbugs can figure out whether it should deal
 with apt pinning preferences or with cupt pinning preferences.
 Hence, if there are two distinct pinning preferences schemes,
 apt-listbugs should try to *simultaneously* deal with both of them
 (if at all possible).

I don't think it will be possible to deal with more than one scheme
simultaneously unless apt-listbugs decide to drop any feedback checks
(i.e. parsing other user preferences). That's why I imagined it as 'run
the logic 2 times'.

 Finally, even if we find a way to have apt-listbugs figure out which
 scheme it should use, there is always the possible scenario of a user
 switching from apt(itude) to cupt or vice-versa.
 That user should not lose previously set pinning preferences! 

This would not be a case if apt-listbugs don't select a scheme to use
but just run for every installed one. That would be usually 1 and in
rare cases 2.

But apparently you have some reason to not plan it this way.




 If I understand correctly, you are saying that apt-listbugs should
 generate rules (such as A and B above) in a package-manager-agnostic
 format and then convert them into package-manager-specific forms.

Not like should be, just like could be, if we didn't have the
high-level package manager monopoly. Yes, that's what I meant.

 I am not sure that this could work well: what if a user manually
 modifies the package-manager-specific configuration, without updating
 the package-manager-agnostic configuration accordingly?

In that hypothetical scenario user would have a generated file like
'/etc/apt/preferences.d/05apt-listbugs' with a first line, say,

-8-
# DO NOT EDIT, this file is auto-generated by apt-listbugs
-8-

If he still decides to edit it, well, he/she was warned. And
apt-listbugs would regenerate the file after the every run anyway.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-24 Thread Eugene V. Lyubimkin
  In the concept I have in the mind all pin stanzas will not be final, so
  I think this check can be totally disabled in cupt mode.
 
 This looks problematic to me.
 I mean: I don't think that apt-listbugs should have distinct modes
 depending on the package manager the user wants to use.
[...]
 But, obviously, the primary goal is supporting apt(itude).
 It's *apt*-listbugs, after all!

Makes sense.

 The user should have (approximately) equivalent pins for both package
 managers.

That's impossible if there are different pin priority systems.

 As I said above, I am under the impression that apt-listbugs needs to
 *simultaneously* take care of each different scheme that must be
 supported.
 Currently, only one scheme is supported and everything is simple.
 Adding support for a second scheme requires code which is able to
 figure out how to handle weird situations that may arise when the two
 configuration files disagree on something.

I was under impression that it's possible not to mix modes. Different
schemes are inconsistent from the very beginning, they disagree on
almost everything even if there would be no configuration files. I
imagined it as 'if apt is installed, run in apt mode, forget about any
non-apt schemes as if they don't exist', 'if say (cupt) is installed, run
in cupt mode, forget about any non-cupt schemes as if they don't exist'.

 It's not much lack of willingness to implement the changes, even though
 I may admit that time is a bit scarce down here, and I would prefer to
 consume it in fixing apt-listbugs own bugs, rather than in adding code
 that could create more problems than the ones it is intended to
 solve...

Of course.

I understand your position. Things will don't change until the 
archive freeze, let's see if I can figure something by that time.

For the design point of view, it could be so that utilities like
apt-listbugs work with the own state file with an own format in a
package-manager-agnostic way, and for each package manager there is a
tiny submodule which converts that file/data to a
package-manager-specific configuration file every time the state
file/data changes. For that to work, utilities should not change its
behavior depending on the other (user) preferences, which I believe
would be better. But that's my humble opinion.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-23 Thread Francesco Poli
On Sun, 16 Oct 2011 17:12:43 +0300 Eugene V. Lyubimkin wrote:

[...]
 On 2011-10-16 12:35, Francesco Poli wrote:
[...]
  Mh...
  This looks like much more work than it would appear at a first
  glance...   :-(
 
 Indeed I was too optimistic. Still,
 
   (A) it has to check whether a given package is already pinned in
   /etc/apt/preferences, in order to make the interactive command-menu
   work correctly
 
 In the concept I have in the mind all pin stanzas will not be final, so
 I think this check can be totally disabled in cupt mode.

This looks problematic to me.
I mean: I don't think that apt-listbugs should have distinct modes
depending on the package manager the user wants to use.

What if the user wants to use apt(itude) for some tasks and cupt for
other ones?
Or else (more common scenario, I think), what if the user uses
apt(itude) and then decides to switch to cupt, and maybe later decides
to switch back to apt(itude)?
Or vice-versa?

The user should have (approximately) equivalent pins for both package
managers.
Hence, apt-listbugs should try hard to generate and manipulate pin
preferences that cause equivalent effects on both apt(itude) and cupt.

Clearly, as long as cupt tries hard to share pin preferences with
apt(itude), this is automatic and requires almost no additional
actions from apt-listbugs.

On the other hand, if cupt begins to use a distinct configuration file
with different syntax and semantics, apt-listbugs will have to take
care of both configuration files and figure out how to reconcile
possible inconsistencies between them...

The other possible strategy is to explicitly document that cupt is not
supported and may fail to work well with apt-listbugs: I would *not* be
happy to conclude that there's no other choice than this.
I would love supporting cupt as far as possible.
But, obviously, the primary goal is supporting apt(itude).
It's *apt*-listbugs, after all!

[...]
  But what about (A)? What if a package is pinned for Apt, but not for
  Cupt? Or vice-versa? Please remember that configuration files may be
  edited by hand by the (super-)user, hence it may always happen that a
  package is pinned for one package manager, but not for the other one...
 
 That's a hardest part I guess. I'd suggest not to mix different schemes
 and run the package manager part two times for each mode (if both are
 installed; if some of them is not installed, don't call the function
 with respective parameters).

As I said above, I am under the impression that apt-listbugs needs to
*simultaneously* take care of each different scheme that must be
supported.
Currently, only one scheme is supported and everything is simple.
Adding support for a second scheme requires code which is able to
figure out how to handle weird situations that may arise when the two
configuration files disagree on something.

[...]
 Back to the my proposal, indeed it requires more work that I thought,
 and I will understand if you won't want to implement the changes.

It's not much lack of willingness to implement the changes, even though
I may admit that time is a bit scarce down here, and I would prefer to
consume it in fixing apt-listbugs own bugs, rather than in adding code
that could create more problems than the ones it is intended to
solve...
It's not much lack of willingness to implement the changes, I was
saying, it's more a matter of understanding if and how the whole thing
can be done properly.

 Thanks
 for consideration in any case.

You're welcome!   :-)


-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgp4gC2DBJtC0.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-19 Thread Eugene V. Lyubimkin
On 2011-10-19 00:42, Francesco Poli wrote:
 Good, I've just pushed this modification to the apt-listbugs public git
 repository: see
 http://anonscm.debian.org/gitweb/?p=apt-listbugs/apt-listbugs.git;a=commitdiff;h=c7561047b211039c5d12e0006fd3af7a16d98ea6
 
 You may therefore consider this modification as pending (that is to
 say, it will be present in the next upload).

Thanks!

 As far as the rest of message http://bugs.debian.org/645412#32 is
 concerned, I still have to read it fully and think about your proposal.
 I hope I manage to find the time soon...   ;-)

Ack. Only one new addition to that is I decided to not push the change
to upcoming stable release to have more time to design and test it, and
also to not cause rush for anyone included myself (and you, if you
decide to follow the changes) before archive freeze. Will create a
long-lived branch instead.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-18 Thread Eugene V. Lyubimkin
Hi Francesco,

On 2011-10-17 23:36, Francesco Poli wrote:
 However, cupt happily goes on and attempts to install derivations,
 until apt-listbugs kicks in and warns the user (again!) that there's a
 bug:
[...]
 If I recall correctly one conversation I had with you (Eugene) back on
 January 2010, this behavior is intentional.
 Only automatic installations of the low Pin-Priority package (as
 recommendations, or dependencies with alternatives, for instance) are
 prevented by cupt. The explicit request to install the low Pin-Priority
 package will be honored, no matter how low the Pin-Priority is.

Exactly, with one remark that even for soft dependencies or alternatives
it's not absolutely prevented, but for example they may be suggested
if user explicitly rejects all better solutions.

I actually like this behavior more than apt-based' package manager
ones'. One more warning is maybe worth implementing in the user
interface, but that's it.  But I am biased, of course.

 Assuming that this is true and confirmed, is the modification of
 apt-listbugs (so that it uses -3 instead of -40 as Pin-Priority to
 prevent the installation of a package) still useful?

As for me -- yes.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-18 Thread Francesco Poli
On Tue, 18 Oct 2011 10:36:13 +0300 Eugene V. Lyubimkin wrote:

[...]
 On 2011-10-17 23:36, Francesco Poli wrote:
[...]
  Assuming that this is true and confirmed, is the modification of
  apt-listbugs (so that it uses -3 instead of -40 as Pin-Priority to
  prevent the installation of a package) still useful?
 
 As for me -- yes.

Good, I've just pushed this modification to the apt-listbugs public git
repository: see
http://anonscm.debian.org/gitweb/?p=apt-listbugs/apt-listbugs.git;a=commitdiff;h=c7561047b211039c5d12e0006fd3af7a16d98ea6

You may therefore consider this modification as pending (that is to
say, it will be present in the next upload).


As far as the rest of message http://bugs.debian.org/645412#32 is
concerned, I still have to read it fully and think about your proposal.
I hope I manage to find the time soon...   ;-)

-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgpymgyzLYFAH.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-17 Thread Eugene V. Lyubimkin
On 2011-10-17 00:40, Francesco Poli wrote:
 I still have to carefully read the rest of the your reply, but, first,
 I have to ask a question about this workaround: I am considering using
 a Pin-Priority of -3 (which has the advantage of being
 representable as a 16-bit signed integer, just in case some tool is
 going to read it using such a small data type...).
 
 Do you think it can be sufficiently low?

Yes, it's sufficiently low for most cases, which I think is enough for a
workaround.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-17 Thread Francesco Poli
On Mon, 17 Oct 2011 14:53:40 +0300 Eugene V. Lyubimkin wrote:

 On 2011-10-17 00:40, Francesco Poli wrote:
  I still have to carefully read the rest of the your reply, but, first,
  I have to ask a question about this workaround: I am considering using
  a Pin-Priority of -3 (which has the advantage of being
  representable as a 16-bit signed integer, just in case some tool is
  going to read it using such a small data type...).
  
  Do you think it can be sufficiently low?
 
 Yes, it's sufficiently low for most cases, which I think is enough for a
 workaround.

I am testing this modification.
It does not seem to cause any problems to apt-get or to aptitude, but
please note that cupt still behaves differently.

  # cat /etc/apt/preferences
  
  Explanation: Pinned by apt-listbugs at Mon Oct 17 20:51:13 + 2011
  Explanation:   #615671: derivations: ftbfs with gcc-4.5
  Package: derivations
  Pin: version *
  Pin-Priority: -3

This prevents the installation of the derivations package, when using
apt-get or aptitude:

  # aptitude install derivations
  No candidate version found for derivations
  No candidate version found for derivations
  No packages will be installed, upgraded, or removed.
  0 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
  Need to get 0 B of archives. After unpacking 0 B will be used.
  
  # apt-get install derivations
  Reading package lists... Done
  Building dependency tree   
  Reading state information... Done
  Package derivations is not available, but is referred to by another package.
  This may mean that the package is missing, has been obsoleted, or
  is only available from another source
  
  E: Package 'derivations' has no installation candidate

However, cupt happily goes on and attempts to install derivations,
until apt-listbugs kicks in and warns the user (again!) that there's a
bug:

  # cupt install derivations
  Building the package cache... 
  Initializing package resolver and worker... 
  Scheduling requested actions... 
  Resolving possible unmet dependencies... 
  
  The following 1 packages will be INSTALLED:
  
  derivations 
  
  The following 5 packages will be REMOVED:
  
  libcloog-ppl0(a) libgmpxx4ldbl(a) libppl-c4(a) libppl9(a) libpwl5(a) 
  
  Need to get 0B/3953KiB of archives. After unpacking 1205KiB will be freed.
  Do you want to continue? [y/N/q/a/?] y
  Performing requested actions:
  Retrieving bug reports... Done
  Parsing Found/Fixed information... Done
  serious bugs of derivations (- 0.52.20100310-1) unfixed
   #615671 - derivations: ftbfs with gcc-4.5
  Summary:
   derivations(1 bug)
  Are you sure you want to install/upgrade the above packages? [Y/n/?/...]

If I recall correctly one conversation I had with you (Eugene) back on
January 2010, this behavior is intentional.
Only automatic installations of the low Pin-Priority package (as
recommendations, or dependencies with alternatives, for instance) are
prevented by cupt. The explicit request to install the low Pin-Priority
package will be honored, no matter how low the Pin-Priority is.

Assuming that this is true and confirmed, is the modification of
apt-listbugs (so that it uses -3 instead of -40 as Pin-Priority to
prevent the installation of a package) still useful?


-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgpGVWGEwPd1y.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-17 Thread James Vega
On Mon, Oct 17, 2011 at 11:36:02PM +0200, Francesco Poli wrote:
 On Mon, 17 Oct 2011 14:53:40 +0300 Eugene V. Lyubimkin wrote:
 
  On 2011-10-17 00:40, Francesco Poli wrote:
   I still have to carefully read the rest of the your reply, but, first,
   I have to ask a question about this workaround: I am considering using
   a Pin-Priority of -3 (which has the advantage of being
   representable as a 16-bit signed integer, just in case some tool is
   going to read it using such a small data type...).
   
   Do you think it can be sufficiently low?
  
  Yes, it's sufficiently low for most cases, which I think is enough for a
  workaround.
 
 I am testing this modification.
 It does not seem to cause any problems to apt-get or to aptitude, but
 please note that cupt still behaves differently.
 
   # cat /etc/apt/preferences
   
   Explanation: Pinned by apt-listbugs at Mon Oct 17 20:51:13 + 2011
   Explanation:   #615671: derivations: ftbfs with gcc-4.5
   Package: derivations
   Pin: version *
   Pin-Priority: -3
 
[snip]
 
 However, cupt happily goes on and attempts to install derivations,
 until apt-listbugs kicks in and warns the user (again!) that there's a
 bug:
 
   # cupt install derivations
   Building the package cache... 
   Initializing package resolver and worker... 
   Scheduling requested actions... 
   Resolving possible unmet dependencies... 
   
   The following 1 packages will be INSTALLED:
   
   derivations 
   
   The following 5 packages will be REMOVED:
   
   libcloog-ppl0(a) libgmpxx4ldbl(a) libppl-c4(a) libppl9(a) libpwl5(a) 
   
   Need to get 0B/3953KiB of archives. After unpacking 1205KiB will be freed.
   Do you want to continue? [y/N/q/a/?] y
   Performing requested actions:
   Retrieving bug reports... Done
   Parsing Found/Fixed information... Done
   serious bugs of derivations (- 0.52.20100310-1) unfixed
#615671 - derivations: ftbfs with gcc-4.5
   Summary:
derivations(1 bug)
   Are you sure you want to install/upgrade the above packages? [Y/n/?/...]
 
 If I recall correctly one conversation I had with you (Eugene) back on
 January 2010, this behavior is intentional.

I would agree with this behavior as well, since it parallels the auto
vs. manual install decision.  It could be argued that it's better
achieved by manually removing the pin, though.

 Only automatic installations of the low Pin-Priority package (as
 recommendations, or dependencies with alternatives, for instance) are
 prevented by cupt. The explicit request to install the low Pin-Priority
 package will be honored, no matter how low the Pin-Priority is.
 
 Assuming that this is true and confirmed, is the modification of
 apt-listbugs (so that it uses -3 instead of -40 as Pin-Priority to
 prevent the installation of a package) still useful?

Yes.  The situation that caused me to open this bug is that every time I
run “cupt safe-upgrade” I see the libclutter bug, abort the upgrade, and
have to manually exclude libclutter-1.0-0 from being upgraded since the
pin isn't being honored.  Using such a low priority pin means I don't
have to remember to add “libclutter-1.0-0-” on to the end of my command
to prevent the upgrade.

-- 
James
GPG Key: 1024D/61326D40 2003-09-02 James Vega james...@debian.org


signature.asc
Description: Digital signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-16 Thread Eugene V. Lyubimkin
On 2011-10-15 17:27, James Vega wrote:
 Well, I currently don't have any libclutter-1.0-0 versions installed,
 which is why the pin is for any version.  Also, I tried changing the
 Pin-Priority to -2000 and that didn't change the outcome any.

Even -2000 is too big for this case (using the current system).
Something like -2 would probably work for most cases. But,
obviously, editing pin priorities by hand after tools is not a solution
at all.

 Hmm, I would find that unfortunate in this instance since apt-listbugs
 is a very useful tool.

Indeed it is. Once/if the Cupt-specific system is rolled out, I hope
it's possible to generate a snippet for Cupt as well.

Hi Francesco, would it be possible for apt-listbugs also place a snippet
like, say,

-8-
Comment: explanation of reason
[ more comment lines ]
Package: package name
Version: 1.2-1 1.3-4 (optional line, if concerns only specific versions) 
Priority: -number
-8-

to, say a file /etc/cupt/version-priorities.d/apt-listbugs, given that a
proper wishlist bug with technical details is filed a couple of months
later?

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-16 Thread Francesco Poli
On Sun, 16 Oct 2011 10:46:33 +0300 Eugene V. Lyubimkin wrote:

 On 2011-10-15 17:27, James Vega wrote:
  Well, I currently don't have any libclutter-1.0-0 versions installed,
  which is why the pin is for any version.  Also, I tried changing the
  Pin-Priority to -2000 and that didn't change the outcome any.
 
 Even -2000 is too big for this case (using the current system).
 Something like -2 would probably work for most cases. But,
 obviously, editing pin priorities by hand after tools is not a solution
 at all.

Hi Eugene!   :-)

I can change the default Pin-Priority that apt-listbugs uses to prevent
the installation of any version of a package from -40 to -2 , if
this can work for most cases with Cupt...
For Apt/Aptitude, any negative Pin-Priority is equivalent: the
apt_preferences(5) man page says that any P  0 will prevent the
version from being installed.

 
  Hmm, I would find that unfortunate in this instance since apt-listbugs
  is a very useful tool.
 
 Indeed it is. Once/if the Cupt-specific system is rolled out, I hope
 it's possible to generate a snippet for Cupt as well.
 
 Hi Francesco, would it be possible for apt-listbugs also place a snippet
 like, say,
 
 -8-
 Comment: explanation of reason
 [ more comment lines ]
 Package: package name
 Version: 1.2-1 1.3-4 (optional line, if concerns only specific versions) 
 Priority: -number
 -8-
 
 to, say a file /etc/cupt/version-priorities.d/apt-listbugs, given that a
 proper wishlist bug with technical details is filed a couple of months
 later?

Mh...
This looks like much more work than it would appear at a first
glance...   :-(

Currently, apt-listbugs has to perform several actions
with /etc/apt/preferences: not only it has to generate one stanza
for /etc/apt/preferences, when the user requests a package to be pinned,
but also:

 (A) it has to check whether a given package is already pinned in
 /etc/apt/preferences, in order to make the interactive command-menu
 work correctly

 (B) it has to parse /etc/apt/preferences in a cron.daily job (see
 /etc/cron.daily/apt-listbugs and
 /usr/share/apt-listbugs/aptcleanup) and drop stanzas if the
 corresponding bugs are fixed in the unpinned candidate version

 (C) maybe it has to do something else that I don't remember now...

I am under the impression that adding support for a distinct pinning
mechanism would require adding a lot of code, if at all possible.
As far as (B) is concerned, I think an entirely new additional and
independent check would need to be implemented
for /etc/cupt/version-priorities.d/apt-listbugs
This would not make me happy!
But what about (A)? What if a package is pinned for Apt, but not for
Cupt? Or vice-versa? Please remember that configuration files may be
edited by hand by the (super-)user, hence it may always happen that a
package is pinned for one package manager, but not for the other one...

In conclusion, I am not happy to hear that you are considering the idea
to make Cupt use a distinct pinning mechanism, and stop sharing pinning
preferences with Apt/Aptitude.
I think it would be much better, if Cupt could continue using the same
pinning preferences as Apt/Aptitude (that is to say the ones found
in /etc/apt/preferences). I can understand that Cupt implements a
different resolver, and has therefore different needs, but, IMHO, it
should try hard to re-use the settings found in /etc/apt/preferences .

At least, this is what I think about this issue.
I hope my contribution to the discussion helps.

Bye.

-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgphSlGoTE07x.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-16 Thread Eugene V. Lyubimkin
Hi,

On 2011-10-16 12:35, Francesco Poli wrote:
 Hi Eugene!   :-)
 
 I can change the default Pin-Priority that apt-listbugs uses to prevent
 the installation of any version of a package from -40 to -2 , if
 this can work for most cases with Cupt...
 For Apt/Aptitude, any negative Pin-Priority is equivalent: the
 apt_preferences(5) man page says that any P  0 will prevent the
 version from being installed.

That would be a nice workaround to do for the short future. As for
exact default value of the number, for the APT the result is explicit
version exclusion from the selection process, I'd suggest place ever
lesser value, like -10. Still it will work only for the absolute
majority of cases in Cupt, not all.

 Mh...
 This looks like much more work than it would appear at a first
 glance...   :-(

Indeed I was too optimistic. Still,

  (A) it has to check whether a given package is already pinned in
  /etc/apt/preferences, in order to make the interactive command-menu
  work correctly

In the concept I have in the mind all pin stanzas will not be final, so
I think this check can be totally disabled in cupt mode.

  (B) it has to parse /etc/apt/preferences in a cron.daily job (see
  /etc/cron.daily/apt-listbugs and
  /usr/share/apt-listbugs/aptcleanup) and drop stanzas if the
  corresponding bugs are fixed in the unpinned candidate version

Thanks, I have quickly browsed through the all (I believe) apt_preferences
specific code, and...

 I am under the impression that adding support for a distinct pinning
 mechanism would require adding a lot of code, if at all possible.
 As far as (B) is concerned, I think an entirely new additional and
 independent check would need to be implemented
 for /etc/cupt/version-priorities.d/apt-listbugs
 This would not make me happy!

I think that not the much would not be needed in the logic. Specifically,
0) create a variable for a package manager used (apt or cupt or
   something else if ever needed);
1) substitute '/etc/apt/preferences' string across all the code by
   a variable (which is a good to do anyway just for refactoring), which
   will be filled depending on package manager used;
2) debian/apt_preferences.rb: lines 55-68 are changed (i.e. covered in
if/else) in cupt mode to place all available versions (not candidate
one) to 'pack_with_vers'. Should be something like 7-10 new lines of code.

That's because I don't plan to derive from the APT syntax where is not
needed. 'Package' line will be the same and there is no problem to
support 'Explanation' line. Thus aptcleanup file should require zero
changes except of 1) above.

 But what about (A)? What if a package is pinned for Apt, but not for
 Cupt? Or vice-versa? Please remember that configuration files may be
 edited by hand by the (super-)user, hence it may always happen that a
 package is pinned for one package manager, but not for the other one...

That's a hardest part I guess. I'd suggest not to mix different schemes
and run the package manager part two times for each mode (if both are
installed; if some of them is not installed, don't call the function
with respective parameters).

 In conclusion, I am not happy to hear that you are considering the idea
 to make Cupt use a distinct pinning mechanism, and stop sharing pinning
 preferences with Apt/Aptitude.

That's fully understable. No one will be the happy of the change itself,
but I want a priority system which is suitable for the full-case
resolver (APT's one is not). This will allow me to make resolver a bit
better for some usual cases. Also I want a priority system which Cupt
users can rely on.

 I think it would be much better, if Cupt could continue using the same
 pinning preferences as Apt/Aptitude (that is to say the ones found
 in /etc/apt/preferences). I can understand that Cupt implements a
 different resolver, and has therefore different needs, but, IMHO, it
 should try hard to re-use the settings found in /etc/apt/preferences .

I tried in the start, but I know for the some time already that it
cannot work how I want, and I will switch sooner or later.
See also
http://bugs.debian.org/cgi-bin/pkgreport.cgi?include=subject%3Apin;package=apt;
and specifically http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=554773.


Back to the my proposal, indeed it requires more work that I thought,
and I will understand if you won't want to implement the changes. Thanks
for consideration in any case.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-16 Thread Francesco Poli
On Sun, 16 Oct 2011 17:12:43 +0300 Eugene V. Lyubimkin wrote:

[...]
 On 2011-10-16 12:35, Francesco Poli wrote:
  Hi Eugene!   :-)
  
  I can change the default Pin-Priority that apt-listbugs uses to prevent
  the installation of any version of a package from -40 to -2 , if
  this can work for most cases with Cupt...
  For Apt/Aptitude, any negative Pin-Priority is equivalent: the
  apt_preferences(5) man page says that any P  0 will prevent the
  version from being installed.
 
 That would be a nice workaround to do for the short future. As for
 exact default value of the number, for the APT the result is explicit
 version exclusion from the selection process, I'd suggest place ever
 lesser value, like -10. Still it will work only for the absolute
 majority of cases in Cupt, not all.

I still have to carefully read the rest of the your reply, but, first,
I have to ask a question about this workaround: I am considering using
a Pin-Priority of -3 (which has the advantage of being
representable as a 16-bit signed integer, just in case some tool is
going to read it using such a small data type...).

Do you think it can be sufficiently low?


P.S.: yes, I know, maybe it would be better, if I converted this
hard-coded value into a configuration setting, but I am convinced
(probably out of laziness!) that it would be an overkill...   ;-)

-- 
 http://www.inventati.org/frx/frx-gpg-key-transition-2010.txt
 New GnuPG key, see the transition document!
. Francesco Poli .
 GnuPG key fpr == CA01 1147 9CD2 EFDF FB82  3925 3E1C 27E1 1F69 BFFE


pgpud7yY0HW6T.pgp
Description: PGP signature


Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-15 Thread Eugene V. Lyubimkin
tags 645412 + confirmed upstream
quit

Hi James, thank you for the report,

On 2011-10-15 11:21, James Vega wrote:
[...]
 $ cat /etc/apt/preferences
 Explanation: Pinned by apt-listbugs at Sat Oct 15 10:59:17 -0400 2011
 Explanation:   #619636: empathy fails to start: failed to create drawable
 Explanation:   #620908: libclutter-1.0-0: clutter-using programs refuse to 
 start on an X server that uses software Mesa
 Package: libclutter-1.0-0
 Pin: version *
 Pin-Priority: -40
 
 Attached resolver debug log shows that libclutter-1.0-0 is still
 selected for installation.

True. That happened becaeuse of the mix of several reasons.

First and main of them is Cupt's resolver always consider all versions,
which is considered a feature. I can add a feature to stop considering
version with some priority less than X for installing, but -40 is still
too big for Cupt's resolver to satisfy the 'forget this version' rule
(i.e. third reason).

Second is: Cupt does not support APT preferences fully, some parts of the
specification is, in my opinion, misleading or ambiguous or even
disagree with APT's own behavior.

Third is: even some clear parts of APT preferences are not supported
since they are not designed for resolver which may consider more than
one version to install.

Conclusion:

Your use case shows to me one more time that the current half-support
situation is a mess and Cupt cannot use APT pinning system reliably.
This is probably a time to drop APT pinning system support altogether
and roll something that Cupt users can rely on.

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



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#645412: cupt: Pin from apt-listbugs does not prevent package install/upgrade

2011-10-15 Thread James Vega
On Sat, Oct 15, 2011 at 09:40:40PM +0300, Eugene V. Lyubimkin wrote:
 First and main of them is Cupt's resolver always consider all versions,
 which is considered a feature. I can add a feature to stop considering
 version with some priority less than X for installing, but -40 is still
 too big for Cupt's resolver to satisfy the 'forget this version' rule
 (i.e. third reason).

Well, I currently don't have any libclutter-1.0-0 versions installed,
which is why the pin is for any version.  Also, I tried changing the
Pin-Priority to -2000 and that didn't change the outcome any.

 Conclusion:
 
 Your use case shows to me one more time that the current half-support
 situation is a mess and Cupt cannot use APT pinning system reliably.
 This is probably a time to drop APT pinning system support altogether
 and roll something that Cupt users can rely on.

Hmm, I would find that unfortunate in this instance since apt-listbugs
is a very useful tool.

-- 
James
GPG Key: 1024D/61326D40 2003-09-02 James Vega james...@debian.org


signature.asc
Description: Digital signature