Age | Commit message (Collapse) | Author |
|
- init counter in SmartConfigure so that the loop-breaker isn't
triggered at random… (Closes: #669060)
|
|
message
|
|
ordering code does not get into a endless loop when it flip-flops
between two states
|
|
|
|
|
|
- recheck all dependencies if we changed a package in SmartConfigure
as this could break an earlier dependency (LP: #940396)
|
|
|
|
|
|
- fix inconsistent clog/cout usage in the debug output
|
|
* apt-pkg/packagemanager.cc:
- fix bug in predepends handling - ensure that packages that needs
unpackaging are unpacked before they are configured (LP: #927993)
[ Julian Andres Klode ]
* apt-pkg/deb/deblistparser.cc:
- Set the Essential flag on APT instead of only Important
* apt-pkg/packagemanager.cc:
- Do not use immediate configuration for packages with the Important flag
* Treat the Important flag like the Essential flag with those differences:
- No Immediate configuration (see above)
- Not automatically installed during dist-upgrade
- No higher score for installation ordering
|
|
- fix bug in predepends handling - ensure that packages that needs
unpackaging are unpacked before they are configured (LP: #927993)
|
|
- No Immediate configuration (see above)
- Not automatically installed during dist-upgrade
|
|
- Do not use immediate configuration for packages with the Important flag
|
|
initialized in the constructor." messages (no functional change)
|
|
- do not try to a void a breaks if the broken package pre-depends
on the breaker, but let dpkg auto-deconfigure it
|
|
|
|
|
|
- when calculating pre-dependencies ensure that both unpack and
configure are considered (instead of only configure) LP: #927993
|
|
|
|
|
|
- ignore breaks on not-installed versions while searching for
breakage loops as we don't have to avoid them
|
|
- return the correct version arch for all+foreign, too
The flag is interpreted at a few other places in different styles so
this commit ensures that the flag check is consistent everywhere
(checking for Same in flag style is a bit too much as it isn't used
in combination with others anyway, but who knows and just for
consistency)
|
|
|
|
|
|
- do not fail on unpacked packages in SmartUnPack, just don't
shedule them for unpack, but do all checks and configure them
|
|
|
|
as tight dependencies between immediate packages better
enabling also the possibility to mark all packages as immediate
(at least Closes: #353290, #540227, #559733, #621836, #639290)
|
|
|
|
|
|
|
|
packages first (LP: #835625)
|
|
- ignore "self"-conflicts for all architectures of a package
instead of just for the architecture of the package locked at
in the ordering of installations too (Closes: #802901)
|
|
SmartConfigure xserver-xorg-video-apm (1:1.2.3-0ubuntu1)
SmartConfigure xserver-xorg-core (2:1.9.0-0ubuntu7.3) <- Loop flag set on xserver-xorg-core
SmartConfigure xserver-xorg (1:7.5+6ubuntu3)
SmartConfigure xserver-xorg-core (2:1.9.0-0ubuntu7.3) (Only Correct Dependancies) <- Loop flag removed prematurely
SmartConfigure libpciaccess0 (0.12.0-1)
SmartConfigure libpixman-1-0 (0.18.4-1)
SmartConfigure xserver-xorg-video-all (1:7.5+6ubuntu3)
SmartConfigure xserver-xorg-video-apm (1:1.2.3-0ubuntu1) (Only Correct Dependancies)
SmartConfigure xserver-xorg-core (2:1.9.0-0ubuntu7.3) <- Incorrectly detects first run as no loop flag
Also applied this fix to the SmartUnpack method.
|
|
resolve dependancies in SmartConfigure) yet Pkg
would not be immediately configured. This was because SmartUnPack still required the immediate flag to be set on Pkg.
Also inproved the debuging adding indented output for SmartUnPack and SmartConfigure and specifying in the output if
SmartConfigure or SmartUnPack was called just to Correct something (PkgLoop = true) or not.
|
|
|
|
Now both SmartConfigure and SmartUnPack can be
called mutiple times on the same package, this is to make sure that when loops are broken all packages that are required
are kept in the same dpkg run.
|
|
|
|
package to ensure all dependancies are satisfied.
|
|
|
|
|
|
|
|
done on the mirco-optimazation level, so lets fix them:
(performance) Possible inefficient checking for emptiness.
(performance) Prefer prefix ++/-- operators for non-primitive types.
|
|
errors or wierd behaviour because of the loop flag being used
at mutiple stages in both SmartUnpack and SmartConfigure.
|
|
Removed quite a bit of code I used while learning about how apt handles things.
Added some extra checks and warnings relevent for Immediate Configuration.
Removed a wierd section I put in to prevent a segfault at 724+, this appears no longer to be needed.
|
|
remove packages once they were confiured to solve Conflicts with the previous version!
Luckily EarlyRemove is sane, and properly checks, so I think this was just cosmetic.
Also fixed a bug on line 374 with SmartUnpack not checking if a dependancy has been removed, this bug was definately harmful.
|
|
More inprovements to the package manager to prevent packages from being configured
twice.
|
|
what they now do is in the apt-pkg/packagemanager.cc file.
The short version is that they will both put the system in a state where there operation can be achived, this involves calling
themselves and each other recursively. Because SmartConfigure can now configure a package and all its dependancies itself, there is
no current need for DepAdd (at least in packagemanager.cc), SmartConfigure also performs the function of the short lived VerifyConfigure
as it checks through all the dependancies before performing configuration.
Another change is to use the ConfigureAll method in OrderInstall to clean up any packages left unconfigured during ImmConfigureAll.
This is necessary to inprove the safety of ImmConfiguration and because of the new SIGINT functionality of dpkgpm.cc relies on no
packages being left unconfigured between pairs of dpkg calls. While writing this commit log, I have realised that the SIGINT stuff
is a prototype and not ready to be used yet as I have only tested it twice.
|
|
immediate configuration.
|
|
but only error if the package is not configured at the end.
|
|
I have stolen the Loop flag from orderlist.cc as it didnt seem to use it anymore.
|