[pacman-dev] [PATCH v2 0/6] Patches for better optdep support

Benedikt Morbach benedikt.morbach at googlemail.com
Mon Jul 25 16:31:08 EDT 2011


Resend, as I've incorporated Dan's suggestions from last time.

The feature set is still the same, but I've thought about how removal of optdepends should work.
See https://wiki.archlinux.org/index.php/User:Moben/Pacman_OptDepends


This implements most features from https://wiki.archlinux.org/index.php/User:Allan/Pacman_OptDepends

What is there:
    - No regressions afaics
    - Only show uninstalled optdepends during install/upgrade
    - In package info, show [installed] after installed optdepends
    - In package info (local or -ii) show packages which optionally depend on the queried package
    - '-Qt' doesn't consider optdepends to be orphans, unless '--nooptdeps/-n' is given

What is still missing:
    - Show which of the packages listed by '-Qtn' is an optdepend and what optdeps on it
    - In package info display the description alongside the "reverse optdeps"
    - Recursive removal of unneeded optdeps
    - Anything listed under "Other Ideas"
    - Tests (mainly needed for the package removal stuff I think)
    - Docs with less sucky english ;-)


---
Benedikt

PS: I'll start working on the rest soon, but that might be delayed
    due to me going on vacation in the first two weeks of August ;-)



Benedikt Morbach (6):
  Split optdep into alpm_depend_t and description
  Hook new optdepend structures up
  Only display uninstalled optdepends during install/upgrade
  Show optdep install status in package info
  optdepends are not orphans unless --nooptdepends is specified
  Make package info show optional requirements

 doc/pacman.8.txt         |    6 +++
 lib/libalpm/alpm.h       |   14 ++++++-
 lib/libalpm/be_local.c   |   11 ++++-
 lib/libalpm/be_package.c |    5 +-
 lib/libalpm/be_sync.c    |    7 +++-
 lib/libalpm/deps.c       |   68 +++++++++++++++++++++++++++++++
 lib/libalpm/deps.h       |    3 +
 lib/libalpm/package.c    |   39 ++++++++++++------
 src/pacman/conf.h        |    1 +
 src/pacman/package.c     |   13 +++++-
 src/pacman/pacman.c      |    3 +
 src/pacman/query.c       |   16 ++++++-
 src/pacman/util.c        |   99 ++++++++++++++++++++++++++++++++++++++++------
 src/pacman/util.h        |    1 +
 src/util/pactree.c       |    2 +-
 15 files changed, 251 insertions(+), 37 deletions(-)

-- 
1.7.6



More information about the pacman-dev mailing list