summaryrefslogtreecommitdiff
path: root/apt-pkg
Commit message (Collapse)AuthorAgeFilesLines
* discard impossible candidates in MarkInstallDavid Kalnischkies2014-02-061-2/+7
| | | | | | | | | If a (Pre-)Depends can't be satisfied there is no point in keeping the candidate as is as it is impossible to find a solution for it, so we can just as well reset the candidate to the currently installed version. We avoid trying to install this impossible candidate later on this way. Closes: #735967
* restart debSrcRecordParsers only if neededDavid Kalnischkies2014-01-302-5/+6
| | | | | | | | | | The offset variable in DebSrcRecordParser was not initialized which we now do and based on it do not trigger a restart if the parser was not used yet avoiding a needless rescan of the section. Detected while working on the previous commit e62aa1dd. Both commits act as a "fix" for the bug shown in the testcase of the commit – this one here would only hide it through.
* pkgTagFile: if we have seen the end, do not try to see moreDavid Kalnischkies2014-01-301-1/+5
| | | | | | | | | | Asking for more via Step() will notice that we are done with the file already and will result in a fail, which means we can't find the last sections anymore (which is especially painful if we haven't moved at all as in the testcase we haven't even looked at one of the sources leading to a strange behaviour) Reported-By: Niall Walsh <niallwalsh@users.berlios.de>
* Merge remote-tracking branch 'donkult/debian/sid' into debian/sidMichael Vogt2014-01-269-24/+26
|\ | | | | | | | | | | | | Conflicts: apt-private/private-list.cc doc/po/de.po test/integration/framework
| * correct some style/performance/warnings from cppcheckDavid Kalnischkies2014-01-166-18/+12
| | | | | | | | | | | | | | | | The most "visible" change is from utime to utimensat/futimens as the first one isn't part of POSIX anymore. Reported-By: cppcheck Git-Dch: Ignore
| * rework some code to fix some scan-build warningsDavid Kalnischkies2014-01-164-6/+14
| | | | | | | | | | | | | | | | No visible functional changes, just code moved around and additional checks to eliminate impossible branches Reported-By: scan-build Git-Dch: Ignore
* | Merge remote-tracking branch 'mvo/debian/sid' into debian/sidMichael Vogt2014-01-251-1/+7
|\ \
| * | support " " in deb822 source optionsMichael Vogt2014-01-251-1/+7
| | |
* | | set APT::Sources::Use-Deb822 to default false for nowMichael Vogt2014-01-241-1/+1
| | |
* | | Merge remote-tracking branch 'mvo/feature/apt-show-nice' into ↵Michael Vogt2014-01-241-41/+43
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | debian/experimental-no-abi-break Conflicts: apt-private/private-cmndline.cc
| * | | "apt show" show user friendly size infoMichael Vogt2014-01-221-41/+43
| | |/ | |/| | | | | | | | | | | | | The size/installed-size is displayed via SizeToStr() and Size is rewriten to "Download-Size" to make clear what size is refered to here.
* | | Merge remote-tracking branch 'upstream/debian/experimental-no-abi-break' ↵Michael Vogt2014-01-214-28/+278
|\ \ \ | | |/ | |/| | | | | | | | | | | | | into feature/source-deb822 Conflicts: test/integration/test-apt-sources-deb822
| * | do not ignore ioctl(TIOCSCTTY) errorsMichael Vogt2014-01-181-9/+19
| | | | | | | | | | | | | | | Show a proper error message when a ioctl() in dpkgpm.cc fails. Also simply StartPtyMagic() a bit.
| * | Merge remote-tracking branch 'mvo/feature/source-deb822' into ↵Michael Vogt2014-01-181-2/+2
| |\ \ | | | | | | | | | | | | debian/experimental-no-abi-break
| * \ \ Merge remote-tracking branch 'mvo/feature/source-deb822' into ↵Michael Vogt2014-01-181-2/+2
| |\ \ \ | | | | | | | | | | | | | | | debian/experimental-no-abi-break
| * \ \ \ merged mvo/feature/deb822Michael Vogt2014-01-162-30/+53
| |\ \ \ \
| * | | | | integrate Anthonys rred with POC for client-side mergeDavid Kalnischkies2014-01-151-8/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Providing the benefits of both without the downsides :) (ABI breaks or external dependencies) For this Anthonys rred is equipped with: - magic-filename-pickup of patches rather than explicit messages - use of FileFd instead of FILE* to get on-the-fly uncompress of the gzip compressed pdiff patches The acquire code in turn stops checking for apt-file's helper as our own rred is now clever enough for our needs.
| * | | | | reenable unlimited pdiff files downloadDavid Kalnischkies2014-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 51fc6def77edfb1f429a48e5169519e9e05a759b we limited the amount of pdiff to be downloaded per index to 20. This was a compromise between not letting it go overboard (becoming even slower) and not using bandwidth needlessly. Now that with the POC the speed reason is gone it makes sense again to download as much files as we possible can via pdiff to save bandwidth (and possibly even time). It also avoids problems with the limit in cases we were we deal with a server merged archieve as this limit assumes a strict patch progression.
| * | | | | correct IndexDiff vs DiffIndex in Debug outputAnthony Towns2014-01-151-6/+6
| | | | | |
| * | | | | Merge remote-tracking branch 'mvo/feature/source-deb822' into ↵Michael Vogt2014-01-052-11/+95
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | debian/experimental-no-abi-break
| * \ \ \ \ \ Merge remote-tracking branch 'donkult/feature/clientmergepdiffs' into ↵Michael Vogt2014-01-053-12/+257
| |\ \ \ \ \ \ | | |_|_|_|_|/ | |/| | | | | | | | | | | | debian/experimental-no-abi-break
| | * | | | | implement POC client-side merging of pdiffs via apt-fileDavid Kalnischkies2013-12-132-4/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The idea of pdiffs is to avoid downloading the hole file by patching the existing index. This works very well, but becomes slow if a lot of patches needs to be applied to reconstruct an up-to-date index and in recent years more and more dinstall (or similar) runs are executed creating more and more pdiffs in the same amount of time, so pdiffs became less useful. The solution is simple: Reduce the amount of patches (which are very small) which need to be applied on top of the index we have available (which is usually pretty big). This can be done in two ways: Either merge the patches on the server-side so that the client has to download only one patch or the patches are all downloaded and merged on the client-side. The first needs a client who is doing one step at a time who can also skip patches if it needs (APT supports this for a long time now). The later is implemented by this commit, but depends on the server NOT merging the patches and the patches being in a strict order in which no patch is skipped. This is traditionally the case for dak, but other repository creators support merging – e.g. reprepro (which helpfully adds a flag indicating that the patches are merged). To support both or even mixes a client needs more information which isn't available for now. This POC uses the external diffindex-rred included in apt-file to do the heavy lifting of merging & applying all patches in one pass, hence to test this feature apt-file needs to be installed.
| | * | | | | allow ':' in GetListOfFilesInDirDavid Kalnischkies2013-12-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | run-parts doesn't allow this char in valid filenames, but we tend to have files with this character in e.g. /var/lib/apt/lists/ Git-Dch: Ignore
| | * | | | | query an empty pkgAcqIndexDiffs if index is up-to-dateDavid Kalnischkies2013-12-131-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous code already did this, this is just being a hell of a lot more obvious, so that it isn't that easy to break in the future. Git-Dch: Ignore
* | | | | | | add support for multipl types in one lineMichael Vogt2014-01-201-10/+15
| | | | | | |
* | | | | | | add support for multiple URIs in deb822 style sources.listMichael Vogt2014-01-201-11/+18
| | | | | | |
* | | | | | | add support for Enabled: no in deb822 sources.listMichael Vogt2014-01-201-0/+4
| |_|_|_|_|/ |/| | | | |
* | | | | | rename "Suite/Section" to pluralMichael Vogt2014-01-181-2/+2
| |_|_|_|/ |/| | | |
* | | | | implement suggestion by donkult (thanks!)Michael Vogt2014-01-171-2/+2
| |_|_|/ |/| | |
* | | | support multiple "Suite:" entriesMichael Vogt2014-01-161-9/+18
| | | |
* | | | rename URL to Uri in deb822-sourcesMichael Vogt2014-01-161-1/+1
| | | |
* | | | rename "distribution" in sources.list to "suite"Michael Vogt2014-01-161-1/+1
| | | |
* | | | * refactor to have a new virtual ParseStanzaMichael Vogt2014-01-162-26/+44
| | | | | | | | | | | | | | | | | | | | | | | | Have a similar ParseStanza() to the current ParseLine(). Rename the Architectures options in deb822 to make it more user friendly
* | | | remove "," in components againMichael Vogt2014-01-161-5/+1
| |_|/ |/| |
* | | improve error messageMichael Vogt2014-01-042-13/+23
| | |
* | | improve testsMichael Vogt2014-01-041-1/+2
| | |
* | | Merge branch 'debian/sid' into feature/source-deb822Michael Vogt2014-01-048-38/+98
|\| |
| * | add missing vector includeMichael Vogt2013-12-281-0/+1
| | |
| * | Merge branch 'debian/sid' into bugfix/bts731738-fancy-progessMichael Vogt2013-12-287-14/+43
| |\ \ | | | | | | | | | | | | | | | | Conflicts: apt-pkg/install-progress.cc
| | * \ Merge branch 'feature/policy-parser-bts732746' into debian/sidMichael Vogt2013-12-272-2/+13
| | |\ \
| | | * | make /etc/apt/preferences parser deal with comment only sectionsMichael Vogt2013-12-212-2/+13
| | | | |
| | * | | add basic tests for GetTempDir()Michael Vogt2013-12-231-1/+1
| | | | |
| | * | | factor GetTempDir outMichael Vogt2013-12-223-13/+21
| | | | |
| | * | | apt-pkg/contrib/gpgv.cc: use /tmp as fallback dirThomas Bechtold2013-12-221-1/+6
| | | |/ | | |/| | | | | | | | | if the directory given by $TMPDIR is not available, use /tmp as fallback.
| | * | Fix conffile prompt regression (LP: #1260297)Michael Vogt2013-12-122-4/+8
| | |/ | | | | | | | | | | | | This fixes a regression in the conffile prompt for the progress-fd and adds a testcase to ensure this does not regress again.
| * | Merge remote-tracking branch 'origin/bugfix/bts731738-fancy-progess' into ↵Michael Vogt2013-12-281-2/+0
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | bugfix/bts731738-fancy-progess Conflicts: apt-pkg/install-progress.cc
| | * | first proof-of-concept for a fix for #731738Michael Vogt2013-12-223-4/+11
| | |/
| * | properly handle SIGWINCH in PackageManagerFancy againMichael Vogt2013-12-282-26/+51
| | |
| * | first proof-of-concept for a fix for #731738Michael Vogt2013-12-223-4/+11
| |/
* | Merge remote-tracking branch 'upstream/debian/sid' into feature/source-deb822Michael Vogt2013-12-103-11/+31
|\|