summaryrefslogtreecommitdiff
path: root/dselect/pkgdepcon.cc
AgeCommit message (Collapse)AuthorFilesLines
2017-05-06doc: Spelling fixesJosh Soref1-1/+1
Signed-off-by: Guillem Jover <guillem@debian.org>
2015-10-18Update Ian Jackson's email addressGuillem Jover1-1/+1
2014-08-09Add versioned Provides supportGuillem Jover1-4/+5
- Add a new dpkg --assert-versioned-provides command. - Packages can provide a specific version, “virtual (= 1.0)” which will be honored, previously it would just be accepted when parsing. - Non-versioned virtual packages will not satisfy versioned dependencies. - Versioned virtual packages will satisfy non-versioned dependencies. This commit is very slightly based on the code reverted in commit 7df7d53a57b9913f4a20b2c9dcd554a2d88ff9f3, which was mostly skeletal. Closes: #7330, #24934, #112131, #134582, #180316 Based-on-patch-by: Ben Collins <bcollins@debian.org>
2014-06-02libdpkg: Uppercase and namespace pkgstatus enum valuesGuillem Jover1-8/+8
2014-06-02libdpkg: Uppercase and namespace pkgeflag enum valuesGuillem Jover1-2/+2
2014-06-02libdpkg: Uppercase and namespace pkgwant enum valuesGuillem Jover1-7/+7
2014-05-28libdpkg: Uppercase dpkg_relation enum valuesGuillem Jover1-1/+1
2014-06-02Move enum definitions out of structsGuillem Jover1-17/+18
This untangles the types, and makes it possible to use functions that use such enums as arguments from C++ code, as otherwise the enum would need to be declared within the struct namespace.
2014-01-15Rename return code variables from r to rcGuillem Jover1-14/+18
2013-12-07Use https:// URLs instead of http:// when possibleGuillem Jover1-1/+1
2013-12-05dselect: Use C++11 nullptr instead of 0 or NULLGuillem Jover1-3/+4
It is way more descriptive, and has a better type. Check for C++11 compiler support and fallback nullptr to 0 if unavailable.
2013-12-05Switch variables from int to bool where appropriateGuillem Jover1-12/+21
2012-05-10libdpkg: Rename versioncompare() to dpkg_version_compare()Guillem Jover1-5/+6
2012-05-10libdpkg: Rework enum depverrel into new enum dpkg_relationGuillem Jover1-1/+1
Use more meaningful enum value names, and simplify them by having the minimum amount of values required.
2012-03-27Do not use `' quote pairs for non-translatable stringsGuillem Jover1-2/+2
2012-03-27Clarify internerr() messagesGuillem Jover1-1/+1
Print the bogus value that triggered the internal error, or simply reword unclear messages.
2012-03-18dselect: Change debug output to always arch-qualify package namesGuillem Jover1-11/+13
Based-on-patch-by: Raphaël Hertzog <hertzog@debian.org> Patch-sponsored-by: Linaro Limited Signed-off-by: Guillem Jover <guillem@debian.org>
2011-10-30dpkg: Ignore conflict with one's own virtual package within a package setRaphaël Hertzog1-0/+4
It's common for packages to “Provides: foo” and “Conflicts: foo” when taking over another package. This self-conflict is explicitly ignored by dpkg. Now if multiple instances of a “Multi-Arch: same” package do this, it should still be allowed. Update the checks accordingly both in dpkg and in dselect. Sponsored-by: Linaro Limited Signed-off-by: Guillem Jover <guillem@debian.org>
2011-10-27Switch from pkginfo->name to pkginfo->set->nameGuillem Jover1-12/+14
Remove now unused struct pkginfo name member.
2011-10-27Update deppossi->ed to point to a pkgset instead of a pkginfoGuillem Jover1-20/+24
It represents only the package name of the dependency. Later deppossi will grow an architecture parameter that will allow us to transform that pkgset into the correct pkginfo (depending on the context). Note that this transformation depends on the dependency type (possi->up->dep_type) and as such it won't be done at parsing time but rather every time that we need to analyze a specific dependency. [hertzog@debian.org: (Sponsored-by: Linaro Limited) - Update code for new location of depended struct. - Update call sites for pkg_db_find() returning pkginfo. ] Signed-off-by: Guillem Jover <guillem@debian.org>
2011-10-27Move the reverse dependencies from struct pkgbin to struct pkgsetRaphaël Hertzog1-6/+6
Reverse dependencies only consider the package name and not the package architecture, so they should logically be part of pkgset and not pkgbin. To reflect this, the next commit will fix struct depossi so that its ed member points to a pkgset. Sponsored-by: Linaro Limited [guillem@debian.org: - Move reverse dependencies into a new anonymous depended struct, instead of two members; available_revdeps and installed_revdeps. ] Signed-off-by: Guillem Jover <guillem@debian.org>
2011-02-11dselect: Switch to use libdpkg debug supportGuillem Jover1-62/+55
2011-01-16Rename struct pkginfoperfile to struct pkgbinGuillem Jover1-5/+8
2010-11-19Cleanup white spacesGuillem Jover1-17/+17
Remove trailing spaces. Remove blank lines not separating different code blocks. Remove blank lines at the end of the file.
2010-11-19libdpkg: Rename informative to pkg_is_informativeGuillem Jover1-5/+7
2010-06-27Use consistent naming for linked lists membersGuillem Jover1-6/+6
Use next/prev instead of next/back (which would complement forward). Also move next to the end of member names and seprate it with an underscore, to simulate it being a sub struct member.
2010-06-27libdpkg: Remove 'valid' member from struct pkginfoperfileGuillem Jover1-44/+38
The two struct pkginfoperfile inside struct pkginfo are always valid, as blankpackage does a blankpackageperfile on each. So there's no actual need for the boolean member, neither for validity checks all over the place and possible subsequent redundant initializations. This is due to commit 5f100a01af636c14a600bf53b22e2ca3f2fcc546.
2010-05-19Use bool instead of int wherever appropriateGuillem Jover1-10/+16
2010-02-19dselect: Do not shadow display member in packagelist::deselect_one_ofGuillem Jover1-3/+5
2010-02-19dselect: Use max/min instead of lesserint/greaterintGuillem Jover1-4/+4
2009-11-08Unify text in license headersGuillem Jover1-5/+5
Add a missing “of the License” after “version 2”. Move “but” and “GNU” at the end of line to the next line. This matches more closely the paragraph found in the license text for the GPL version 2.
2009-11-08Replace FSF address by pointing to the gnu.org URLGuillem Jover1-3/+2
Use the <http://www.gnu.org/licenses/> URL, instead of in most cases the outdated FSF address, which is way more stable, as the latter has changed several times in the past.
2009-10-26Sort order of header includesGuillem Jover1-2/+2
Place first <config.h> and <compat.h>, then all <sys/*.h> sorted by complexity, followed by the rest of the system headers, then <dpkg/*.h> and finally the local "*.h" ones. Move <dpkg/i18n.h> inclusion into libdpkg inclusion block, as the <gettext.h> compatibility header already takes care of including <locale.h> before <libintl.h> on environments were its probamatic. Removed duplicated inclusions.
2009-07-15Disable default automake preprocessor include pathsGuillem Jover1-2/+2
Tell automake not to add “-I.” to the preprocessor flags, to avoid file collisions with system headers. Re-add the path where config.h is located. Namespace and use bracketed file inclusions for libdpkg headers, and use quoted inclusions for program headers.
2009-07-14dselect: Fix typo in package deselection conditionGuillem Jover1-5/+5
The test was always false due to the typo.
2009-07-14Cleanup eflag value namesGuillem Jover1-2/+5
Remove f and v from value names. Remove duplicated value for reinstreq.
2008-09-14libcompat: Add new compat.h headerGuillem Jover1-0/+1
2008-09-14dselect: Unmark debug messages for translationGuillem Jover1-4/+4
2008-08-26Unify usage of extern "C" declarationsGuillem Jover1-4/+2
2008-08-04Unify usage of FIXME in commentsGuillem Jover1-2/+2
2008-06-30Switch to use UTF-8 copyright symbol and add missing onesGuillem Jover1-1/+1
Some 'Copyright <year>' entries didn't have a copyright symbol. Add it and switch the rest from '(C)' to '©', but we don't do this on program output which for now should remain pure ascii.
2008-06-30dselect: Fix compilation warningsGuillem Jover1-3/+3
Surround boolean expressions with parenthesis. Switch a for with an empty body into a while.
2008-03-30Implement triggers supportIan Jackson1-2/+6
Closes: #17243, #68981, #215374, #217622, #248693, #308285
2008-03-09Implement 'Breaks' properly in dselectIan Jackson1-2/+2
It works just like Conflicts. This is correct since dselect only deals with packages being installed, removed or placed on hold.
2008-03-09Correct broken dselect logic for self-conflicting packagesIan Jackson1-2/+5
The previous code seems to have had some confusion over the precedence of '&&' vs ':'. The new rule is that a Conflicts is violated if the target package is installed or to be error-preserved ie would_like_to_install() != 0 - except that we disregard packages which directly Conflict with themselves.
2006-09-272006-09-27 Ian Jackson <iwj@ubuntu.com>Guillem Jover1-0/+1
* dselect/pkgdepcon.cc (packagelist::resolvedepcon): Recognise the dep_breaks dependency type in the dependency and conflict resolution.
2003-10-26Make dselect do conflict resolution when dealing with automatically selected ↵Wichert Akkerman1-2/+2
recommended packages
2003-10-25Almost *EVERY* damn file was including config.h in the wrong spot. AfterAdam Heath1-1/+3
making it the first include, then off_t/size_t/etc could actually be redefined to be 64-bit compatible.
2002-05-06Perl sucks, fix Ian's email addressWichert Akkerman1-1/+1
2002-05-06Update Ian Jacksons' email addressWichert Akkerman1-1/+1