Age | Commit message (Collapse) | Author |
|
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.
|
|
|
|
|
|
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.
|
|
when using Immediate-Configure-All.
|
|
More inprovements to the package manager to prevent packages from being configured
twice.
|
|
TODO for dpkgpm:
Useful messages about the interupt, what was done to what packages and what was not done to what packages.
Only fail when the system is in a clean state, at the moment it will fail either a configure or install run.
|
|
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.
|
|
all packages.
|
|
for all packages.
Began adding to the SmartUnpack method to prevent dependancy loops breaking apt.
|
|
breakages to prevent loops.
|
|
|
|
* doc/makefile:
- create doxygen directory to avoid depending on magic (Closes: #628799)
* cmdline/apt-key:
- explicitly state that net-update is not supported if no url is set
- require to be root for add, rm, update and net-update
- clarify update vs. net-update in different distros (Closes: #632043)
* debian/apt.symbols:
- forgot 'mips' in the list for all architecture dependent symbols
- comment out gcc-4.5 specific symbols as gcc-4.6 is now default
- the symbol for PrintStatus() is architecture dependent
* apt-pkg/policy.cc:
- do not segfault in pinning if a package with this name doesn't exist.
Thanks to Ferdinand Thommes for the report!
- Defaults is a vector of Pin not of PkgPin
- ensure that only the first specific stanza for a package is used
- save all stanzas which had no effect in Unmatched
- allow package:architecure in Package:
- remove invalid pkgcache.bin and rebuild it if possible
- log reinstall commands in history.log
* apt-pkg/init.cc:
- don't set deprecated APT::Acquire::Translation, thanks Jörg Sommer!
* cmdline/apt-config.cc:
- show Acquire::Languages and APT::Architectures settings
in 'dump' (Closes: 626739)
* apt-pkg/orderlist.cc:
- ensure that an old version of a package with a provides can
never satisfy a dependency of a newer version of this package
[ Michael Vogt ]
* methods/mirror.cc:
- ignore lines starting with "#" in the mirror file
- ignore non http urls in the mirrors
- append the dist (e.g. sid, wheezy) as a query string when
asking for a suitable mirror
* apt-pkg/deb/deblistparser.cc:
- include all known languages when building the apt cache
(LP: #794907)
* apt-pkg/deb/debindexfile.cc:
- remove some no longer valid checks for "TranslationsAvailable()"
[ Kenneth Solbø Andersen ]
* apt-pkg/deb/dpkgpm.cc:
- set permissions of term.log to root.adm and 644 (LP: #404724)
[ Chris Leick ]
* various typo and syntax corrections in doc/*.xml
[Chris Baines]
* Began to fix DepAdd for imediate configuration of all packages
|
|
|
|
VerifyAndConfigure
|
|
|
|
|
|
The modifications to the packagemanager should fix the test-provides-gone-with-upgrade testcase.
|
|
- create doxygen directory to avoid depending on magic (Closes: #628799)
* cmdline/apt-key:
- explicitly state that net-update is not supported if no url is set
- require to be root for add, rm, update and net-update
- clarify update vs. net-update in different distros (Closes: #632043)
* debian/apt.symbols:
- forgot 'mips' in the list for all architecture dependent symbols
- comment out gcc-4.5 specific symbols as gcc-4.6 is now default
- the symbol for PrintStatus() is architecture dependent
* apt-pkg/policy.cc:
- do not segfault in pinning if a package with this name doesn't exist.
Thanks to Ferdinand Thommes for the report!
- Defaults is a vector of Pin not of PkgPin
- ensure that only the first specific stanza for a package is used
- save all stanzas which had no effect in Unmatched
- allow package:architecure in Package:
|
|
|
|
|
|
|
|
|
|
|
|
(VerifyConfigure) to the configuration methods.
|
|
- set permissions of term.log to root.adm and 644 (LP: #404724)
|
|
that is not needed
|
|
this will break adding translations to the cache if the current environment does not include the language (e.g. LANG=C but german translations). testing for existance of the file is the better approach
|
|
- include all known languages when building the apt cache
(LP: #794907)
|
|
empty (its ok to have empty packages files)
|
|
|
|
(Closes: #195301)
This commit deals with the following cases:
- First section of index file (Packages,Sources,Translation) without Package field
- Signed release files without GPG data (NODATA)
- i18n/Index files without hash sums
Handling unsigned Release files is more complicated, and the example code
using indexRecords is disabled as it can reject correct Release files
without hashes. How we can reliably check unsigned Release files is
another question, and not urgent anyway, as it should have no
dramatic effect (we could check that it is a valid RFC-822 section,
but that's a bit too long to write)
|
|
- don't set deprecated APT::Acquire::Translation, thanks Jörg Sommer!
|
|
|
|
|
|
The next invocation of APT tried to load an outdated big
(and possible io-cold) file just to end up rebuilding it
(possibly only as non-root in memory again and again), so
we remove it here and if we have a srcpkgcache we are
going to rebuild, too.
|
|
|
|
- ensure for Multi-Arch:same packages that they are unpacked in
lock step even in immediate configuration (Closes: #618288)
|
|
to ships a patch for this so pretend to be nice and make it work (TM)
|
|
- replace non-posix gnu-extension strdupa with strdup
|
|
MarkInstall to be a bit more easy to read and possibily a bit faster -
and add a small testcase for these situations to ensure the same behaviour
|