summaryrefslogtreecommitdiff
path: root/apt-pkg
Commit message (Collapse)AuthorAgeFilesLines
* cleanup headers and especially #includes everywhereDavid Kalnischkies2014-03-13112-310/+706
| | | | | | | | Beside being a bit cleaner it hopefully also resolves oddball problems I have with high levels of parallel jobs. Git-Dch: Ignore Reported-By: iwyu (include-what-you-use)
* move defines for version to macros.hDavid Kalnischkies2014-03-132-27/+68
| | | | | | also adds namespaced attributes for good usage Git-Dch: Ignore
* warning: unused parameter ‘foo’ [-Wunused-parameter]David Kalnischkies2014-03-1326-79/+75
| | | | | Reported-By: gcc -Wunused-parameter Git-Dch: Ignore
* warning: type qualifiers ignored on function return type [-Wignored-qualifiers]David Kalnischkies2014-03-135-8/+8
| | | | | Reported-By: gcc -Wignored-qualifiers Git-Dch: Ignore
* warning: cannot optimize loop, the loop counter may overflow ↵David Kalnischkies2014-03-132-3/+3
| | | | | | | [-Wunsafe-loop-optimizations] Git-Dch: Ignore Reported-By: gcc -Wunsafe-loop-optimizations
* warning: no previous declaration for foobar() [-Wmissing-declarations]David Kalnischkies2014-03-131-1/+1
| | | | | Git-Dch: Ignore Reported-By: gcc -Wmissing-declarations
* warning: useless cast to type A [-Wuseless-cast]David Kalnischkies2014-03-1310-26/+26
| | | | | Git-Dch: Ignore Reported-By: gcc -Wuseless-cast
* warning: cast from type A to type B casts away qualifiers [-Wcast-qual]David Kalnischkies2014-03-135-32/+32
| | | | | Git-Dch: Ignore Reported-By: gcc -Wcast-qual
* warning: extra ‘;’ [-Wpedantic]David Kalnischkies2014-03-1317-289/+288
| | | | | Git-Dch: Ignore Reported-By: gcc -Wpedantic
* fix -Wmissing-field-initializers warningsDavid Kalnischkies2014-03-132-8/+8
| | | | | Reported-By: gcc Git-Dch: Ignore
* make doxygen more quiet, fix issues and disable latexDavid Kalnischkies2014-03-138-23/+27
| | | | Git-Dch: Ignore
* support DEB_BUILD_PROFILES and -P for build profilesDavid Kalnischkies2014-03-133-2/+31
| | | | | | | | | | Inspired by the rest of the patch in 661537, but abstract the parsing of various ways of setting the build profiles more so it can potentially be reused and all apt parts have the same behaviour. Especially config options, cmdline options and environment will not be combined as proposed as this isn't APTs usual behaviour and dpkg doesn't do it either, so one overrides the other as it normally does.
* implement BuildProfileSpec support as dpkg has in 1.17.2Johannes Schauer2014-03-133-9/+101
| | | | | | | | Build-dependencies are now able to include a <profile.foo …> specification limiting usage similar to already supported [arch …]. More details: https://wiki.debian.org/BuildProfileSpec Closes: 661537
* add default and override handling for Cnf::FindVectorDavid Kalnischkies2014-03-134-65/+41
| | | | | | Automatically handle the override of list options via its parent value which can even be a comma-separated list of values. It also adds an easy way of providing a default for the list.
* check version before adding scores in resolverDavid Kalnischkies2014-03-131-1/+12
| | | | | | Prevents that "old" dependencies have an influence in the scoring. With positive dependencies this is usually not a problem, but negative dependencies can linger around for a long time.
* show debug output only if told so in packagemanagerDavid Kalnischkies2014-03-131-1/+2
| | | | Git-Dch: Ignore
* do not do the same looping twiceDavid Kalnischkies2014-03-131-7/+1
| | | | Git-Dch: Ignore
* propagate a negative score point along breaks/conflictsDavid Kalnischkies2014-03-131-14/+25
| | | | | | | | | | | | | | | | | versioned -dev packages like db and boost have the problem of no dependencies which would give them a competitive advantage against an older incarnation of the -dev package, so they tend to be kept back until the old version is removed from the archive, which, if the user has older releases in its sources can take a long time (or never happens). The newer version has a conflicts/breaks against the older one, but the older one hasn't against the newer, so by giving via the conflicts the older one a reduced score the newer one can win if there is no other reason to keep it. If both have a conflict against each other the scoring will cancel itself out, so no harm done. This gives "action" a slightly bigger edge in breaks/conflicts cases than before, but holding back isn't a really good solution anyway.
* initial version of apt-helperMichael Vogt2014-02-271-1/+1
|
* Fix typos in documentation (codespell)Michael Vogt2014-02-2235-87/+87
|
* prepare re-enable fnmatch() once we have proper reportingMichael Vogt2014-02-201-0/+3
|
* disable fnmatch()Michael Vogt2014-02-141-1/+0
| | | | | | | | | | | The current PackageContainerInterface::FromString() will do a FromFnmatch() first and then FromRegEx(). This commit reverts that change to restore the old behavior to only look for RegEx and not glob-style pattern. The rational is that: a) currently a fnmatch() is misleadingly reported as a regex match to the user (Bug#738880) b) a fnmatch may match something different than a a RegEx so the change broke a published interface
* add missing canNotFindFnmatch/showFnmatchSelection (for the next ABI break)Michael Vogt2014-02-142-2/+29
|
* simplify code some more to make reddit happyDavid Kalnischkies2014-02-141-38/+29
| | | | | | | | | | | | | Commit 6008b79adf1d7ea5607fab87a355d664c8725026 should have been guarded by "Git-Dch: Ignore", but it wasn't and I only noticed it with the Close message via deity thinking "hehe, I wonder if someone is gonna notice". Looks like someone did: hats off to reddit user itisOmegakai! Good to know that what I do isn't only monitored by goverments. :) As there is another instance of basically the same code we just factor out the code a bit and reuse, so its even cleaner and not only simpler. Reported-By: scan-build
* allow http protocol to switch to httpsDavid Kalnischkies2014-02-141-1/+6
| | | | | | | | | switch protocols at random is a bad idea if e.g. http can switch to file, so we limit the possibilities to http to http and http to https. As very few people (less than 1% according to popcon) have https installed this likely changes nothing in terms of failure. The commit is adding a friendly hint which package needs to be installed though.
* remove duplication in pkgCdrom::Add and ::IdentDavid Kalnischkies2014-02-122-90/+45
| | | | Git-Dch: Ignore
* apt-cdrom should succeed if any drive succeedsJohn Ogness2014-02-121-2/+24
| | | | | | | | | | | | | | | If there are multiple CD-ROM drives, `apt-cdrom add` will abort with an error if any of the drives do not contain a Debian CD which is against the documentation we have saying "a CD-ROM" and also scripts do not expect it this way. This patch modifies apt-cdrom to return success if any of the drives succeeded. If failures occur, apt-cdrom will still continue trying all the drives and report the last failure (if none of them succeeded). The 'ident' command was also changed to match the new 'add' behavior. Closes: 728153
* always cleanup patchfiles at the end of rred callDavid Kalnischkies2014-02-101-0/+9
| | | | | | | | | With APT::Get::List-Cleanup disabled the ed-style patch files are lingering in the lists/ directory otherwise. That was kinda okay in the old none-client-merge as the filename was always the same so it was constantly overridden, but now with different names for client-merge quiet a few could pill up on the system and are used by the next call as it picks them up based on the filename.
* do not use an empty APT_CONFIG environment variableDavid Kalnischkies2014-02-101-1/+1
|
* simplify code to make compilers happyDavid Kalnischkies2014-02-101-3/+9
| | | | | | | | Does the same as before, but is a bit simpler on the logic for humans as well as compilers. scan-build complained about it at least with: "Result of operation is garbage or undefined" Reported-By: scan-build
* Merge remote-tracking branch 'mvo/bugfix/multiarch-upgrade' into debian/sidMichael Vogt2014-02-061-0/+5
|\
| * Fix multiarch package upgrade issueMichael Vogt2014-02-041-0/+5
| | | | | | | | | | | | When checking for negative dependencies in MarkInstall() ensure that only dependencies that are relevant (i.e. getting installed) are checked.
* | 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.